﻿
****************************************************************************************************
                                         YAT Release Notes.
 --------------------------------------------------------------------------------------------------
                                    YAT - Yet Another Terminal.
     Engineering, testing and debugging of serial communications. Supports RS-232/422/423/485...
   ...as well as TCP/IP Client/Server/AutoSocket, UDP/IP Client/Server/PairSocket and USB Ser/HID.
 --------------------------------------------------------------------------------------------------
                    Visit YAT at https://sourceforge.net/projects/y-a-terminal/.
                     Contact YAT by mailto:y-a-terminal@users.sourceforge.net.
 --------------------------------------------------------------------------------------------------
                    Copyright © 2003-2004 HSR Hochschule für Technik Rapperswil.
                                Copyright © 2003-2024 Matthias Kläy.
                                        All rights reserved.
 --------------------------------------------------------------------------------------------------
                              YAT is licensed under the GNU LGPL-2.1.
           See https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html for license terms.
****************************************************************************************************


Contents
========

0. Download
1. Installation
2. Execution
3. History of changes in YAT
4. History of changes in XTerm232
5. Roadmap
6. Legal


====================================================================================================
0. Download
====================================================================================================

The standard x64 installer package can be downloaded from YAT's SourceForge main page at
https://sourceforge.net/projects/y-a-terminal/. The complete set of packages can be downloaded
from YAT's SourceForge file page at https://sourceforge.net/projects/y-a-terminal/files/:

 > x64 installer
 > x64 installer that includes the .NET runtime
 > x64 binaries
 > x86 installer
 > x86 installer that includes the .NET runtime
 > x86 binaries

How to chose the most appropriate package:

 > For up-to-date systems, use a compact installer package "...(32-bit).zip" or "...(64-bit).zip".
   (Windows Installer and .NET are already installed on up-to-date systems.)
 > For outdated systems or offline installation, use a full installer package "..._with_.NET...zip".
   (Windows Installer and .NET are included for installation.)
 > Alternatively, use a binary distribution, but don't forget to manually install the monospaced
   'DejaVu' font used by YAT as well as assign the .yat/.yaw file extensions to "YAT.exe".


====================================================================================================
1. Installation
====================================================================================================

It is recommended to unzip the package to a temporary location before starting the installation.

YAT uses .NET 4.8. The installer packages ensure that .NET 4.8 is available on the target computer.
The installer packages also ensure that Windows Installer 4.5 is available on the target computer.

For installation, run the ".msi" if Windows Installer is installed, otherwise "setup.exe".
 1. Installer will check the prerequisites mentioned above and install what is missing.
 2. Installer will install YAT. Older versions of YAT are automatically replaced.

You can also download .NET and/or Windows Installer from <https://www.microsoft.com/download>
or by googling for "Download Microsoft .NET Framework 4.8" and/or "Windows Installer 4.5".
Installing .NET and/or Windows Installer requires administrator permissions.

For use of a binary distribution, refer to the respective instructions.


x86 (32-bit) -vs- x64 (64-bit)
----------------------------------------------------------------------------------------------------

YAT can be installed as x86 or x64 application. x86 works on either 32-bit or 64-bit systems, given
a 64-bit system provides 32-bit compatibility. x64 also works on either 32-bit or 64-bit systems, as
YAT x64 is built as 'Any CPU' for providing compatibility with MSIL projects. By default, x86 is
installed to "\Program Files (x86)" whereas x64 is installed to "\Program Files".

It is not possible to install both distributions for the same user. When changing from x86 to x64 of
the same version of YAT, or vice versa, the installed distribution must first be uninstalled before
the other distribution can be installed. If this limitation is not acceptable, create a new feature
request ticket and describe the impacts/rationale/use case as detailed as possible. Or use binary
distributions, which may exist in parallel without restrictions.


====================================================================================================
2. Execution
====================================================================================================

"Start > Programs > YAT > YAT" or
start "C:\<Program Files>\YAT\YAT.exe" for normal execution.
Start "C:\<Program Files>\YAT\YATConsole.exe" for console execution.

In normal execution, infos/warnings/errors are shown on the user interface, whereas in console
execution, notifications are returned via stdout/stderr and there will be no blocking modal dialogs.


====================================================================================================
3. History of Changes in YAT
====================================================================================================

YAT 2.7.2 :: 2024-08-09
----------------------------------------------------------------------------------------------------

Important changes:
- Upgrade to NUnit 3.14.0 and the TestCentric 1.6.4 GUI runner (feature request #293).
- Various cleanup: NUnit (FR #145), .NET 4+ (FRs #128, #229), assembly naming, field naming,...
- Major steps towards availability on Mono/Linux (parts of feature requests #381 and #401).
- Assemblies again prefer 64-bit rather then 32-bit execution (regression of YAT 2.5.0).
- Use of \todo, \fixme,... tags again unified in source code.

Fixed bugs:
- Non-100% screen scale issue with [Terminal > Settings... > Text... > Exclusion] fixed (bug #589).
- Serial COM port: Handling RTS/DTR pin presets in [Terminal > Settings...] fixed (bug #590).
- Serial COM port, USB Ser/HID: Potential Tx delay after XOn eliminated (regression of YAT 2.7.0).

Limitations and known issues:
- Same as previous release, see below.


YAT 2.7.1 :: 2024-03-08
----------------------------------------------------------------------------------------------------

New:
- Additional options to format CRC (add-on to feature request #300).

Important changes:
- [Help > Command Line Help...] added (related to fix of bug #587).

Fixed bugs:
- Non-100% primary screen scale issue with [File > New Terminal...] dialog fixed (bug #583).
- 225% or greater screen scale 'ArgumentOutOfRangeException' for multiple dialogs fixed (bug #586).
- The /tf command line option now supports file path relative to the current directory (bug #587).
- Serial COM port: Legacy settings like 150/7/E/0 or 150/7/E/1.5 not supported by a serial port
  device again result in an error message, rather than trying to reopen the port (bug #585).

Limitations and known issues:
- Same as previous release, see further below. In addition:
- General limitations of .NET Windows.Forms:
   > 150% or greater primary screen scale doesn't properly work with dialogs only resizable in one
     dimension. The [New Terminal], [Terminal Settings], [Predefined Commands], [Log Settings],
     [Command Line Help] and [Release Notes] dialogs are no longer fixed in height or width,
     i.e. can again be resized in both dimensions (bug #583). Issue reported to Microsoft.
   > When text is selected, drop down of recent [Send Text] immediately closes again (bug #584).


YAT 2.7.0 :: 2024-02-16
----------------------------------------------------------------------------------------------------

New:
- Option to append CRC on sending. Behavior and CRC can be configured, e.g. CRC-16/Modbus, and new
  keywords "\!(CRC)" and "\!(NoCRC)" added for sending (feature request #300).
- New [File] menu entries to open folder where workspace or terminal file resides (feat. req. #478).
- [File > Preferences...] now allows selecting how the format is handled on copying monitor content.
  Enables copying plain text even if formatting is enabled (bug #574, related to former feat. #346).
- [View > Format...] now indicates "formatting per element type" and allows setting the font color
  and style when formatting per element type is disabled (bug #573).
- [View > Format...] now provides a few predefined themes (feature request #349) and the means to
  define custom themes. [File > New Terminal...] now applies the most recently used theme and font
  to newly created terminals (related to feature request #349).
- New keywords "\!(Stop)", "\!(Close)" and "\!(Exit)" added (feature request #483).
- Serial COM port: Half duplex modem handshake added (feature request #485).
- Log files can now optionally be placed and/or named by terminal name and/or I/O device, useful
  when simultaneously logging multiple terminals (feature request #487).

Important changes:
- Performance on numeric radices improved (related to feature request #300).
- Performance on copying formatted monitor content improved (related to bugs #573, #574, #575).
- Serial COM port transmission test coverage significantly improved (related to bug #572).
- Serial COM port throughput improved, especially for higher baud rates (related to bug #572).
  The two above stated improvements have revealed that it is no longer necessary to limit serial COM
  port buffering by the [Terminal > Settings... > Advanced... > Buffer...] settings by default, i.e.
  these settings are disabled by default now. Additional settings related to buffers and time-out
  provide additional means to work around limitations of the .NET Framework's implementation of
  serial COM ports and certain COM port devices.
- Serial COM port: Hardware control signal state can now be preset in terminal setting dialog.
- Serial COM port: RS-485 test coverage increased (related to feature request #485).
- Serial COM port and USB Ser/HID: Software flow control handling further improved (feat. #481).
- TCP/IP and UDP/IP: IPNetwork upgraded to 2.6 (feature request #469).
- Source code analysis (FxCop, StyleCop,...) migrated from classic tool based approach to latest
  build integrated analyzers (feature request #231, incl. feature request #267).

Fixed bugs:
- Multi-line [Send Text] now respects a trailing empty line.
- [Send Text] again retains cursor position and selection when moving mouse to main menu, toolbar
  or status bar (bug #566, regression of YAT 2.6.0, related to fix of bug #554).
- [Predefined] panel no longer gets cropped when [Hide Undefined Commands] is active (bug #569).
- [Predefined > Hide Undefined Commands] is no longer reset when changing layout (rel. to bug #569).
- Predefined page navigation is now fully visible also with scaling other than 100 % (bug #568).
- [File > Preferences... > ...ask whether to switch to another port] again includes the serial COM
  port previously active, again enabling use cases where one or multiple devices alternately use the
  same serial COM port number (feature request #473 follow-up related regression of YAT 2.6.1).
- Serial COM port XOff state no longer results in lost data (bug #572, regression of YAT 2.6.0).
- Running for days no longer results in an 'OverflowException' of the byte/line counters (bug #576).
- Attempt to fix potential 'InvalidOperationException' when running a TCP/IP server heavily
  connecting and disconnecting clients for hours (bug #567).
- [Break lines after time-out] no longer results in a 'NotSupportedException' (bug #570, regression
  of YAT 2.6.0 improvements in handling leading hidden data like e.g. an initial <XOn>).
- On copying monitor content, warning messages at the end of a line no longer appear at the
  beginning of a line (bug #575).
- Custom colors in [View > Format...] are instantly stored in user settings (related to feat. #349).

Limitations and known issues:
- General limitations of .NET Framework:
   > Unicode is limited to the basic multilingual plane (U+0000..U+FFFF) (feature request #329).
- General limitations of .NET Windows.Forms:
   > Main window status bar tooltips may flicker in case window is maximized (bug #488).
   > Tool strip combo box slightly flickers when updating item list, e.g. [Find Pattern] (bug #402).
   > Combo box cannot restore some corner-case cursor positions (bug #403).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] or [Find] items (bug #347).
   > Combo box of [Send File] does not have the same color as a button (related to fix of bug #308).
   > When filling-in [Alt Gr] modified characters, key shortcut underlines may remain (bug #553).
   > When [Send Text] or [Send File] is hidden, resizing the panel doesn't properly work (bug #412).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
   > Vertical scrolling of monitors while a lot of data is being transmitted and while items are
     selected may lead to a severe drop of the overall performance (related to bug #383).
   > Link label text rendering issues after plotting (bug #485).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
   > Issue with layout when closing an MDI child (bug #399).
   > Issue with layout when resizing the main form (bug #513).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port may result
     in port no longer usable. It happens due to bugs in the .NET 'SerialPort' for which Microsoft
     seems to have no plans fixing. YAT applies several patches to circumvent the issues, some of
     them require [Terminal > Settings... > ...monitor the port...] being active. If the issue still
     is observed, refrain from disconnecting a device or undocking or hibernating while a port is
     open. In case the issue occurs, exiting YAT should be sufficient to force the .NET Runtime to
     terminate the buggy pieces of code. If not, reconnecting the device should fix the issue.
- General serial COM port limitations:
   > Using high baud rates, e.g. 1 MBaud, without flow control likely results in occasional loss of
     data due to buffer overruns (related to fix of bug #572).
- Limitations of Visual Studio Installer Projects 2022:
   > While the YAT SVN repository now preserves the time stamps of 3rd party, resources and
     documentation files, the installer will reset the time stamps to the build time (bug #515).
   > The installer now requires that all file types have a command assigned (bug #582).
- The "\!(PortSettings())" keyword is yet limited to serial COM ports (feature request #71).
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Automatic actions [Filter] and [Suppress] as well as automatic actions and responses based on a
  text trigger are constrained to handle complete lines. Thus, individual characters incl. control
  characters like <XOn> as well as incomplete lines will not be displayed until line is complete.
- Switching log off may take several seconds, during which YAT is unresponsive (bug #459).


YAT 2.6.1 :: 2023-06-25
----------------------------------------------------------------------------------------------------

Important changes:
- [File > Preferences... > ...ask whether to switch to another port] now proposes the next available
  COM port, rather than fixed to the first available COM port (follow-up to feature request #473).

Fixed bugs:
- Panel dependent context menu items no longer remain disabled (bug #563, regression of YAT 2.6.0).
- 'InvalidOperationException' on [Terminal > Refresh] (bug #579, regression of YAT 2.6.0).
- Layout related minor issues in [View > Format...] dialog fixed (bug #562).
- Explicit default radix selection in [Predefined > File] fixed.

Limitations and known issues:
- Same as previous release, see below.


YAT 2.6.0 :: 2023-06-09
----------------------------------------------------------------------------------------------------

New:
- Possibility to display a changing value on a single line ("steady line" feature) (bug #546).
   > Additional automatic action [Overwrite Line on subsequent Rx].
   > Text terminals: New option to execute carriage returns when outside EOL, disabled by default.
- Additional keyword "\!(Break)" that breaks sending, same as [Ctrl+B], useful with e.g. predefined
  commands and automatic responses when [concurrent sending] is allowed (feature request #477).
- When a serial COM port gets disconnected, there is a new option to automatically switch to the
  next available COM port; and the "\!(Port())" keyword now supports -1 to automatically select the
  first available COM port (feature request #473).
- UDP/IP terminals now provide a setting to either optimize for speed or retain datagrams. The
  latter is the default setting; each packet requested by the terminal will be sent as an individual
  datagram and each datagram received will be shown on an individual line (feature request #472).

Important changes:
- Terminal view improved; frames removed. View may look unfamiliar at first. Improvement allows more
  area usable for content; especially noticeable with a workspace containing many terminals.
- [Predefined Commands] panel now shows a vertical scroll bar if required (feature request #474).
- [Predefined Commands] panel no longer shows page navigation if only a single page (rel. to #474).
- Option to hide menu and toolbar (related to feature request #474).
- Improved speed on copying monitor content onto clipboard if formatting is disabled; clipboard will
  only contain unformatted text in this case (feature request #346).
- Handling of keyboard input if not keeping [Text] or for sending immediately improved (related to
  fix of bugs #548 and #549).
- [Terminal > All Terminals Open/Start] added.
- TCP/IP server option to limit the number of connections.
- TCP/IP AutoSocket servers are now limited to a single connection by default.
- UDP/IP and TCP/IP terminal I/O status now shows more details on connection end-points.
- Hidden bytes, e.g. initial <XOn>, no longer trigger line begin, e.g. time stamp.
- Serial COM port connection monitor now better covers devices which do not properly handle the
  connection state, e.g. Teensy with Microsoft CDC ACM driver (related to feat. #473 and bug #543).
- Additional measures to prevent deadlocked serial COM ports (related to feat. #473 and bug #543).

Fixed bugs:
- [Send > Text*] now validates and respects modified [Text] (bug #544).
- Activating the toolbar no longer resets modified [Text] (bug #510).
- Sending a predefined command no longer resets modified [Text] (bug #549).
- Predefined command shortcut [Shift+F3] fixed (bug #548, regression of fix of bug #534).
- Change of terminal state no longer resets modified [Text] (related to fix of bugs #548 and #549).
- Text terminals: When software flow control is active, <XOn>/<XOff> no longer have an impact on
  EOL even if EOL is not shown (follow-up of fix of bug #538).
- Serial COM port send rate limitation fixed and improved (bug #557, regression of YAT 2.4.0).
- Double-clicking a file in a dialog no longer triggers the underneath single-click action in the
  main menu, toolbar or status bar (bug #554, related to fix of former bug #210).
- Control char related labels in settings dialogs no longer use terminal back color (bug #547).
- 'NullReferenceException' on switching from TCP/IP to serial COM port fixed (bugs #550 and #555).
- Mouse wheel scrolling of combo boxes fixed (bug #558).

Limitations and known issues:
- General limitations of .NET Framework:
   > Unicode is limited to the basic multilingual plane (U+0000..U+FFFF) (feature request #329).
- General limitations of .NET Windows.Forms:
   > Main window status bar tooltips may flicker in case window is maximized (bug #488).
   > Tool strip combo box slightly flickers when updating item list, e.g. [Find Pattern] (bug #402).
   > Combo box cannot restore some corner-case cursor positions (bug #403).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] or [Find] items (bug #347).
   > Combo box of [Send File] does not have the same color as a button (related to fix of bug #308).
   > When filling-in [Alt Gr] modified characters, key shortcut underlines may remain (bug #553).
   > When [Send Text] or [Send File] is hidden, resizing the panel doesn't properly work (bug #412).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
   > Vertical scrolling of monitors while a lot of data is being transmitted and while items are
     selected may lead to a severe drop of the overall performance (related to bug #383).
   > Link label text rendering issues after plotting (bug #485).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
   > Issue with layout when closing an MDI child (bug #399).
   > Issue with layout when resizing the main form (bug #513).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port may result
     in port no longer usable. It happens due to bugs in the .NET 'SerialPort' for which Microsoft
     seems to have no plans fixing. YAT applies several patches to circumvent the issues, some of
     them require [Terminal > Settings... > ...monitor the port...] being active. If the issue still
     is observed, refrain from disconnecting a device or undocking or hibernating while a port is
     open. In case the issue occurs, exiting YAT should be sufficient to force the .NET Runtime to
     terminate the buggy pieces of code. If not, reconnecting the device should fix the issue.
- Limitation of Visual Studio Installer Projects 2022:
   > While the YAT SVN repository now preserves the time stamps of 3rd party, resources and
     documentation files, the installer will reset the time stamps to the build time (bug #515).
- The "\!(PortSettings())" keyword is yet limited to serial COM ports (feature request #71).
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Automatic actions [Filter] and [Suppress] as well as automatic actions and responses based on a
  text trigger are constrained to handle complete lines. Thus, individual characters incl. control
  characters like <XOn> as well as incomplete lines will not be displayed until line is complete.
- Switching log off may take several seconds, during which YAT is unresponsive (bug #459).


YAT 2.5.0 :: 2022-12-12
----------------------------------------------------------------------------------------------------

New:
- Text terminals: Additional options to...
  ...configure treatment of extended ASCII characters 0x80..FF (feature request #448).
  ...hide or replace control and/or extended ASCII characters by a placeholder (feature req. #459).
  ...hide <CR> and/or <LF> outside EOL. Useful with mixed EOL, e.g. devices with <CRLF> and <LFCR>.
     In such case, EOL can now be set to <LF> while <CR> can be hidden (feat. req. #449, bug #521).
- Option to show the time delta among selected monitor lines.
- Additional keywords "\!(LogOn|Off|Toggle)" allow to change logging on-the-fly (feat. req. #446).
- Additional option to enclose separated content, e.g. "[58h]" for "58h". (feat. req. #447).
- Additional automatic actions [Filter Content] and [Suppress Content] (related to bug #521),
  enabling filtering/suppressing e.g. ANSI escape sequences (predefined regular expression added).
- Binary terminals: Byte send delay added (related to analysis of bug #528).
- IP networking: DNS preference for IPv6 added to [File > Preferences...] (related to bug #529).
- Script to convert Docklight settings files (.ptp) to YAT (.yat) (feature request #429),
  available at https://sourceforge.net/p/y-a-terminal/code/HEAD/tree/trunk/YATTools/Settings/.

Important changes:
- ASCII related settings moved from [Terminal > Settings... > Advanced...] to
  [Terminal > Settings... > Text...] (related to feature requests #448, #449, #459 and bug #521).
- ASCII control characters now also use the control format in Bin/Oct/Dec/Hex radix. This enables
  coloring them differently than non-control characters also in Bin/Oct/Dec/Hex radix.
- ASCII control character replacement setting [Character] migrated to [Symbol Character] resulting
  in displaying as Unicode symbols U+2400..241F as well as U+2421 (bug #517, feature request #34).
- ASCII control character treatment (display/execute/replace/hide) test coverage improved.
- Text terminals: Encoding related improvements (ordering, ASCII compatibility).
- Binary terminals: Now by default using .NET's [Encoding.Default] that corresponds to the system's
  default ANSI code page, e.g. Windows-1252 in Western Europe, for parsing of [Send Text|File].
- Serial COM ports and USB Ser/HID: XOn/XOff counts are now preserved when changing settings.
- Serial COM ports: Control pin and break counts are now preserved when changing settings.
- Accuracy of time stamps on sending improved for all I/O types (bug #514) and
  accuracy of time stamps on receiving improved for UDP/IP sockets (feature request #442).
- UDP/IP server now supports filtering with CIDR or wildcard notation (related to bug #495,
  implemented using IPNetwork).
- Tooltips of send buttons no longer show unlimited large data (bug #535).
- Send buttons again show the file path (leftover of bug #308, feature request #458).
- [Send Text|File] buttons now toggle to [Break Sending] while sending of e.g. files or repeating
  commands is ongoing (feature request #445).
- Automatic actions [Highlight], [Filter] and [Suppress] renamed to [... Line] for obviousness and
  distinction with newly added [Filter Content] and [Suppress Content] (related to bug #521).
- Option to immediately start logging when creating a new terminal (related to bug #539).
- Major settings dialogs now indicate the corresponding main menu icon.
- Terminal specific settings dialogs now indicate the terminal name (related to bug #539).
- System error messages and standard message box buttons in English rather than locale (bug #66).
- Upgrade to Visual Studio 2022 (feature request #441).
- Build details refined (feature request #437):
   > The build ID now represents the SVN revision and thus is an incremental value across versions.
   > Visual Studio projects switched to deterministic builds, enabling identical compilation output
     across multiple builds for identical inputs.
- App.config file time stamps now reflect the build time of the binaries (bug #515).
- 3rd party use of YAT assemblies, e.g. with PowerShell or CS-Script, product name and version now
  reflect the YAT name and version rather than the 3rd party executable's. Especially applies to
  name and version stated when writing settings files (related to feature request #429).

Fixed bugs:
- [Send Text] shortcuts [F3] and [Ctrl+F3] now reflect modified text (bug #534).
- Scaling problem of [Predefined Commands] panel on non-100 % scaling fixed (bugs #522 and #524).
- Text terminals:
   > Wait for response now always resets clearance when terminal is closed/reopened (bug #523).
   > Treatment of backspace fixed for UTF-16/32 (related to ASCII control character improvements).
   > Handling of adjacent EOL character(s) fixed for UTF-16/32 Big-Endian.
   > When software flow control is active, <XOn>/<XOff> no longer have an impact on EOL (bug #538).
- Serial COM port break state handling fixed and improved:
   > Output break state count is immediately incremented.
   > Input break state immediately gets restored on first chunk received.
   > Input break state count should be incremented only once on all ports/hardware.
   > Break state is indicated in terminal I/O status.
   > Test coverage enhanced.
- IP networking: Use of host name no longer results in "[broadcast] ..." error message (bug #529).
- UDP/IP server filtering now also works on matching address and filter bit masks (bug #495).
- Automatic actions [Filter] and [Suppress] no longer erroneously suppress Tx content (bug #519).
- Double-click on [connect time] or [bytes | lines] again properly resets the counters (bug #533).
- [Terminal > Select All] now happens instantly even with very many lines (bug #461).
- ASCII control character replacement setting [Character] no longer results in a
  'TargetInvocationException' (bugs #517 and #521).
- 'ArgumentOutOfRangeException' caused by 'ComboBoxHelper' fixed.

Limitations and known issues:
- General limitations of .NET Framework:
   > Unicode is limited to the basic multilingual plane (U+0000..U+FFFF) (feature request #329).
- General limitations of .NET Windows.Forms:
   > Main window status bar tooltips may flicker in case window is maximized (bug #488).
   > Tool strip combo box slightly flickers when updating item list, e.g. [Find Pattern] (bug #402).
   > Combo box cannot restore some corner-case cursor positions (bug #403).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] or [Find] items (bug #347).
   > Combo box of [Send File] does not have the same color as a button (related to fix of bug #308).
   > When filling-in [Alt Gr] modified characters, key shortcut underlines may remain (bug #553).
   > When [Send Text] or [Send File] is hidden, resizing the panel doesn't properly work (bug #412).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
   > Vertical scrolling of monitors while a lot of data is being transmitted and while items are
     selected may lead to a severe drop of the overall performance (related to bug #383).
   > Link label text rendering issues after plotting (bug #485).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
   > Issue with layout when closing an MDI child (bug #399).
   > Issue with layout when resizing the main form (bug #513).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port may result
     in the port no longer being usable. It happens due to a bug in the .NET 'SerialPort' class for
     which Microsoft seems to have no plans fixing. To prevent the issue, refrain from disconnecting
     a device or undocking or hibernating while a port is open. In case the issue occurs, exiting
     YAT should be sufficient to force the .NET Runtime to terminate the buggy piece of code.
     If not, disconnecting the device or rebooting the computer should fix the issue.
- Limitation of Visual Studio Installer Projects 2022:
   > While the YAT SVN repository now preserves the time stamps of 3rd party, resources and
     documentation files, the installer will reset the time stamps to the build time (bug #515).
- The "\!(PortSettings())" keyword is yet limited to serial COM ports (feature request #71).
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Automatic actions [Filter] and [Suppress] as well as automatic actions and responses based on a
  text trigger are constrained to handle complete lines. Thus, individual characters incl. control
  characters like <XOn> as well as incomplete lines will not be displayed until line is complete.
- Switching log off may take several seconds, during which YAT is unresponsive (bug #459).


YAT 2.4.1 :: 2021-05-15
----------------------------------------------------------------------------------------------------

New:
- Quick reference (PDF) added. Accessible via [Windows > Start > YAT] and [YAT > Help].
- [Find All] added, with shortcut [Alt+Shift+L], incl. live update (feature requests #424 and #434).

Important changes:
- YAT now checks whether the DejaVu monospaced font is available, and whether a monospaced font
  is used for the terminals. The user gets warned if either is not given (feature request #341).
- [View > Format... > Font...] now by default only shows monospaced fonts (related to req. #341).
- Parser now supports the non-standard but common C-style '\e'.
- Behavior on multi-byte character set decoding mismatch can now be configured in the terminal
  settings [Terminal > Settings... > Text...] (feature request #436).
- Separate colors for warnings and errors (related to feature request #436). On existing terminals,
  separate colors will have to be explicitly activated by [View > Format... > Defaults...].
- Find text can now automatically be set by either selecting a line in a monitor or by selecting the
  whole or parts of a line in [Copy of Active Line] (related to feature requests #424 and #434).
- Log dialog now more clearly states "root directory and file name base" (part of feat. req. #435).
- Help window can again be sized to display more/all content (related to earlier feature req. #237).
- Command line argument errors are better reported now (bug #503).
- Builds reverted from 'x64' to 'Any CPU' for providing compatibility with MSIL projects that make
  direct use of YAT/MKY/OxyPlot/RtfWriter/ALAZ assemblies (bug #507, related to recent upgrade to
  .NET Runtime 4 and .NET Framework 4.8 (feature request #229)).

Fixed bugs:
- Handling of missing log file folder fixed.
- Issues when backspace was preceded by space(s) fixed.
- [broadcast] recently selected for UDP/IP remote host is no longer listed for TCP/IP (bug #508).
- Handling of trigger of automatic actions and responses fixed and improved (bugs #504 and #505).
- Plotting no longer takes time stamp and other meta info into account (bug #509). The option will
  again become available in a dedicated action/response configuration dialog (future feature #431).
- Plot window related 'NullReferenceException' when closing YAT fixed.

Limitations and known issues:
- Same as previous release, see below.


YAT 2.4.0 :: 2021-01-29
----------------------------------------------------------------------------------------------------

New:
- Text terminals: Option to glue characters of a line together, enabled by default, resulting in
  fewer line breaks when sending and receiving in full-duplex (related to feat. #19 and bug #176).
- Text terminals: Option to wait for response, resulting in request and response being displayed
  adjacently. Useful for sending multi-line commands and files with ping-pong-style command sets
  (feature request #19 and bug #176).
  Note for serial COM ports: In order to only limit the send rate, YAT offers other settings, e.g.
  [Terminal > Settings... > Advanced... > Send > Buffer not more than baud rate permits] which
  limits the send rate and lets an active hardware or software flow control do its job even for
  small buffers and large amount of data.
- Support for concurrent sending, i.e. multiple commands can be active simultaneously (feat. #387).
  Useful e.g. for sending a text command while a repeating text command is already ongoing.
  Can be enabled at [Terminal > Settings... > Advanced... > Send > Allow concurrent sending].
- Content separator can now be configured. Useful for e.g. displaying or logging hex data without
  separating spaces, e.g. "414243", using [None]. Separator format can now also be configured.
- Additional keyword "\!(TimeStamp)" allowing injection of current date/time (feature request #400).
  Format according to [View > Format Settings... > Options > Time Stamp].
  Useful for e.g. sending "AT+DATE=20 01 01 12 00 00".
- Additional keyword "\!(Port())" allow to change the serial COM port on-the-fly (feat. req. #403).
  Especially useful as predefined command e.g. "\!(Port(10))\!(NoEOL())" to change port by shortcut.
- Additional keywords "\!(RtsOn|Off|Toggle)" and "\!(DtrOn|Off|Toggle)" allow to change serial COM
  port signals on-the-fly (feature request #408). Also work with predefined commands and shortcuts.
- Additional option to disable warnings like "XOff state, retaining data..." on sending.
- USB Ser/HID now takes the HID usage page and ID into account, allowing working with devices that
  implement multiple usages (e.g. a standard interface and a firmware upgrade interface) (bug #480).
- Automatic actions and responses now support multiple triggers within a line or chunk.
- Automatic actions and responses now support text triggers, optionally incl. regular expression.
- Automatic actions and responses now list recent used trigger and response texts.
- Automatic responses now support injection of trigger captures, given regular expression is used.
- New automatic actions [Plot Byte Count/Rate] and [Plot Line Count/Rate].
- New automatic actions [Line Chart], [Scatter Plot] and [Histogram].

Important changes:
- High FTDI and Prolific baud rates added to list of standard baud rates (feature request #398).
- Using term "I/O" instead of "Port" for terminal, settings,... for reducing mix-up of term in YAT
  with TCP and UDP "Port" terminology, where a "Port" only is a part of the overall "I/O" subsystem.
- Text terminals: Now by default using UTF-8 instead of .NET's [Encoding.Default] that is limited to
  an ANSI code page, e.g. Windows-1252 in Western Europe (related to former bugs #427, #428, #429).
- Sending refactored (precondition for feature requests #19, #333, #387 and fix of bug #176).
- Text terminals: Line content and EOL is no longer sent in two separate chunks (feature req. #333).
- Element and line processing refactored (precondition for feature requests #19, #366, #367 and fix
  of bugs #176, #371, #477, #478 as well as preparing upcoming feature request #74).
- Unidirectional Tx and Rx panels now use a separate line detection mechanism and no longer break
  lines at the same location as the bidirectional panel (bugs #371 and #477).
- [Monitor Context Menu > Clear] no longer clears all panels (Tx/Bidir/Rx), just the selected. Use
  [Main Menu > Terminal > Clear [All]] or [Ctrl+L] to clear all panels (related to change above).
  [Main Menu > Terminal > All Terminals Clear] or [Ctrl+E] to clear all terminals (feat. req. #392).
- User saved workspace file name is indicated in title bar (feature request #416).
- Binary terminals: Lines are no longer broken each 16 bytes by default, they now by default are
  broken on every chunk (related to bug #477).
- Consequently, chunk line break settings are now located in the text/binary specific dialog.
- Comma and semicolon added to list of predefined EOL sequences (feature request #409).
- Option to hide undefined predefined commands (feature request #410).
- Option to [Copy Text / File Path to Clipboard] (bug #493).
- Possibility to clear lists of recent files and [Send Text|File] commands.
- Adaptive monitor update rate further improved.
- Calculation of byte/line rates improved.
- For Bin/Oct/Dec/Hex/Unicode radix:
   > Performance significantly improved (feature request #406).
   > ASCII control characters are no longer converted to mnemonics.
- Option to not send XOn when opening a serial COM port or USB Ser/HID terminal (feat. req. #393).
- TCP/IP connection state management improved in terms of stress resilience.
- TCP/IP segment payload size limited to the safe maximum of 516 (IPv4) or 1220 octets (IPv6).
- UDP/IP datagram payload size limited to the safe maximum of 508 (IPv4) or 1212 octets (IPv6).
- IPv6 support enabled for UDP/IP terminals (feature request #372).
- Changes on-the-fly by keywords like "\!(Port())", "\!(PortSettings())", "\!(Baud())",... are now
  reflected in the terminal settings, i.e. also indicated by '*' (related to reqs. #71 and #403).
- [Terminal > Settings... > Advanced...] dialog rearranged for better fitting screen.
- Upgrade to .NET Runtime 4 and .NET Framework 4.8 (part of feature request #229, precondition for
  new automatic actions [Chart/Plot/Histogram] and upcoming feature request #74 [Scripting]).
  Consequently, x64 distributions no longer need to be 'Any CPU' builds and are 'x64' builds now.
- Improved error message in case the required version of .NET is missing.
- Additional command line option [--version]. Better command line message box (feature req. #383).
- Project/Assembly structure slightly refined (preparing upcoming feature request #74).
- Test coverage of sending and processing significantly increased (related to refactorings above).

Fixed bugs:
- Predefined command description gets updated when multi-line command gets changed (bug #481) and
  default description no longer gets saved in settings file.
- Predefined command description is kept when filled-in before command (bugs #472, #476, #499).
- Issue with not shown predefined commands when defining more than 12 predefined commands fixed.
- Layout of predefined commands can now also be changed on a new terminal that doesn't contain
  commands yet (related to previous feature requests #28, #257, #365).
- Import/Paste of a .yacp command page file that contains more predefined commands than currently
  configured now behaves correctly (bug #479, related to previous feature requests #28, #257, #365).
- Explicit default radix is no longer reset to [String] when multiple predefined command pages are
  being defined (bug #492).
- Recent TCP/IP and UDP/IP ports, remote hosts and local filters are remembered again (related to
  former feature request #273).
- TCP/IP client terminals now also try to automatically reconnect within configured timeout even in
  case the server resets an initial SYN and times-out a subsequent SYN request (bug #487).
- Automatic actions and responses now work chunk independently (feature request #366).
- Automatic actions [Filter] and [Suppress] now also work for continuous data (bug #478) and on
  refresh (feature request #367).
- The time information of a line is no longer defined by hidden bytes like e.g. an initial XOn.
- Line break detection and processing continues even when exceeding the configured maximum number
  of characters/bytes per line (related to refactoring of element and line processing).
- Sending of very long lines now also works for TCP/IP based terminals (bug #340).
- Sending of very long lines in other terminal types (in case of e.g. serial COM ports longer than
  the software buffer, typically 2048 bytes) works again (bug #417).
- Handling of [Preferences... > ...take serial number/string into account] fixed (rel. to bug #480).
- Consequence of .NET upgrade (former limitations of .NET Runtime 2 and .NET Framework 3.5):
   > System display scaling other than 100% (96 DPI) no longer result in minor distortions on Win 7
     (bugs #85, #235, #375) nor some blurring on Win 8 and above (feature requests #310 and #360).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port should
     no longer result in an 'ObjectDisposedException' or 'UnauthorizedAccessException' (bugs #224,
     #254, #293, #316, #317, #345, #382, #385, #387, #401, #442) and should neither result in
     deadlocks anymore, though not all potential causes for this issue in the .NET 'SerialPort'
     class could be verified.
   > Running YAT for a long period, or creating many terminals, no longer results in memory leaks,
     previously resulting in gradual increase of memory consumption (RAM) (bugs #243, #263, #336).

Limitations and known issues:
- General limitations of .NET Framework:
   > Unicode is limited to the basic multilingual plane (U+0000..U+FFFF) (feature request #329).
- General limitations of .NET Windows.Forms:
   > System error messages are output in local language, even though YAT is all-English (bug #66).
   > Main window status bar tooltips may flicker in case window is maximized (bug #488).
   > Tool strip combo box slightly flickers when updating item list, e.g. [Find Pattern] (bug #402).
   > Combo box cannot restore some corner-case cursor positions (bug #403).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] or [Find] items (bug #347).
   > When [Send Text] or [Send File] is hidden, resizing the panel doesn't properly work (bug #412).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
   > Vertical scrolling of monitors while a lot of data is being transmitted and while items are
     selected may lead to a severe drop of the overall performance (related to bug #383).
   > Link label text rendering issues after plotting (bug #485).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
   > Issue with layout when closing an MDI child (bug #399).
   > Issue with layout when resizing the main form (bug #513).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port may result
     in the port no longer being usable. It happens due to a bug in the .NET 'SerialPort' class for
     which Microsoft seems to have no plans fixing. To prevent the issue, refrain from disconnecting
     a device or undocking or hibernating while a port is open. In case the issue occurs, exiting
     YAT should be sufficient to force the .NET Runtime to terminate the buggy piece of code.
     If not, disconnecting the device or rebooting the computer should fix the issue.
- The "\!(PortSettings())" keyword is yet limited to serial COM ports (feature request #71).
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Automatic actions [Filter] and [Suppress] as well as automatic actions and responses based on a
  text trigger are constrained to handle complete lines. Thus, individual characters incl. control
  characters like <XOn> as well as incomplete lines will not be displayed until line is complete.
- Switching log off may take several seconds, during which YAT is unresponsive (bug #459).


(Versions 2.2 and 2.3 have been skipped to emphasize the update to .NET 4.x while still keeping the
option for releasing the 2.4+ features (except plotting) also on .NET Runtime 2.0 / Framework 3.5.)


YAT 2.1.0 :: 2019-10-04
----------------------------------------------------------------------------------------------------

New:
- Predefined commands can now be reordered (feature requests #376 and #379), cut/copy/pasted via
  clipboard, exported/imported to a single page .yacp or complete set of pages .yacps file (feature
  reqs. #28, #257, #365), and even linked to one or multiple single page .yacp file(s) (feat. #29).
- Option to show more predefined commands (24, 36, 48, 72, 108) (feature requests #256, #344).
- Additional keyword "\!(PortSettings())" that allows re-configuring the port settings before or
  after sending data; and dedicated keywords "\!(Baud())", "\!(DataBits())", "\!(Parity())",
  "\!(StopBits())" and "\!(FlowControl())" to change a port setting on-the-fly (feat. #71, partly
  related to former request #321 implemented since YAT 1.99.80). Useful for e.g. sending commands
  that let a connected device change its baud rate. See [Help > Contents...] for example usage.
- Additional automatic actions [Filter] and [Suppress] added (feature requests #347 and #382).
  Useful to exclusively display a pattern in the monitor, or suppress a pattern.
- Additional automatic action [Clear Monitor on subsequent Rx] added (feature request #357).
  Useful for screen/page synchronization on terminal-emulation-like behavior.
- Additional option [View > Show Duration (Line)] (feature request #348).
- Additional terminal option [Include Port Control Events] (feature request #350).
- Additional log channel [Log Port Control] (related to feature request #350).
- Text terminals: Additional options to configure line break:
   > Length line break (feature request #224).
     Useful to limit the number of characters displayed per line, i.e. "word wrap".
     Useful to communicate with devices that do use text messages but no EOL sequence.
   > Timed line break (feature request #340).
     Also useful to communicate with devices that do use text messages but no EOL sequence.
- Text terminals: Additional option to let bell (0x07) beep (related to feature request #308).
- Text terminals: Backspaces (0x08) are treated as backspaces by default (feature request #308).
                  Note that tabs have already been treated as tabs by default since YAT 1.99.22.

Important changes:
- UDP/IP now supports sending to and receiving from broadcast addresses (feature request #370).
- Serial COM port again uses the term RTS (Ready To Send) as that is still most commonly used.
  In addition, notes/hints on terms RFR (Ready For Receiving) as well as RTR (Ready To Receive).
- Serial COM port and USB Ser/HID terminals by default hide XOn/XOff flow control characters for
  'Software' and 'Combined' (related to earlier feature request #190, #206, #226 and bug #319).
  Note that 'Manual Software' and 'Manual Combined' still show the XOn/XOff characters by default
  but can optionally be hidden (earlier feature request #190).
- USB Ser/HID device list no longer potentially shows weird manufacturer, product or serial strings;
  neither does it show duplicated devices anymore.
- Errors are now indicated in square "[...]" instead of angle "<...>" brackets (rel. to feat. #350).
- Prevention of potential handling error when copying data to clipboard (feature request #345).
- Unicode/Non-Unicode multi-byte encoding test coverage improved (related to bugs #427, #428, #429).
- No longer using [Ctrl+Alt+<CharOrDigit>] shortcuts to avoid conflicts with [Alt Gr] modifier as
  [Ctrl+Alt] results in [Alt Gr] on Windows (feature request #359). As a consequence:
   > Shortcuts to activate predefined command page changed from [Ctrl+Alt+1..9] to [Ctrl+1..9].
   > Shortcuts to change window layout changed from [Ctrl+Alt+...] to [Alt+Shift+...].
   > Shortcuts to [Find Next] changed from [Ctrl+Alt+F] to [Alt+Shift+N].
          and [Find Previous] changed from [Alt+Shift+F] to [Alt+Shift+P].
- Shortcuts to select panels no longer conflict with those to select menus (feature request #355).
   > Shortcut of [Send Text] changed to [Alt+E] to distinguish from shortcut of [Terminal] menu.
   > Shortcut of [Send File] changed to [Alt+I] to distinguish from shortcut of [File] menu.
   > Shortcut to [Monitor] added as [Alt+M].
- Text terminals: Refactoring and refinement of EOL handling (related to feature requests #224,
  #340 and #347). Any sequence and mix of received and sent characters (even quite exotic ones)
  should now be correctly handled and displayed. Corresponding test coverage enlarged.
- Text terminals: Option to show length as number of characters (related to feature request #224).

Fixed bugs:
- Non-Unicode multi-byte encodings (e.g. GBK, GB18030, Shift-JIS,...) fixed (bugs #427, #428, #429).
- 'OverflowException' in case of missing closing parentheses in [Send Text] fixed (bug #426).
- Exception when trying to open terminal on non-standard port (e.g. "COM", "ABC") fixed (bug #416).
- Handling of potential 'ObjectDisposedException' when disconnecting USB/RS-232 converters (USB CDC)
  without closing the serial COM port now also handles potential 'UnauthorizedAccessException'
  (bug #442, related to former bugs #224, #254, #293, #316, #317, #345, #382, #385, #387, #401).
- [Remote Host] and [Local Filter] selection again show the common items (rel. to feat. req. #370)).
- [Send > Skip Empty Line on [Send File]] no longer accidentally restricts [Send Text].
- Problem with escape sequences in automatic action/response fixed (bug #424).
- Tool bar items no more flicker on automatic action/response trigger (related to bug #424).
- 'ArgumentOutOfRangeException' when deleting a sole predefined command page fixed (bug #440).
- 'SplitterDistance' value related 'ArgumentException' fixed (bugs #414, #418, #419, #420, #421,
  #422, #423, #432, #434, #435, #441, #443, #444, #450, #452, #453, #456, #461, #467, #468, #474,
  #475) which further refines the fix to former bugs #408 and #409.
- Attempted to fix rare 'TargetInvocationException' caused by 'IndexOutOfRangeException' (bug #446).
- [View > Show Time Span] is no longer reset when changing terminal settings (bug #436).
- [View > Show Time Span/Delta] are no longer swapped (bugs #431, #449, #458).
- [Advanced Settings > Disable escapes on [Send Text]] no longer leads to an 'ArgumentException'
  in some cases (bug #454).
- Shortcuts [Ctrl+Shift+F1..F12] 'Copy to Send Text' fixed.
- Option to set default radix for predefined commands fixed.
- Command line option [TransmitText] again allows keywords (related to bug #454).
- Optional user name of terminal is again taken into account (bug #415).
- [Help > Release Notes] fixed for YATConsole.exe (bug #413).
- Binary terminals: Synchronization on timed line break added (related to feature request #340).

Limitations and known issues:
- General limitations of .NET Framework:
   > Unicode is limited to the basic multilingual plane (U+0000..U+FFFF) (feature request #329).
- General limitations of .NET Windows.Forms:
   > System display scaling other than 100% (96 DPI) results in minor distortions on Win 7 and
     before (bugs #85, #235, #375) and some blurring on Win 8 and above (feat. reqs. #310 and #360).
     The latter will be fixed with upgrading to .NET 4.7+ (feature request #229).
   > System error messages are output in local language, even though YAT is all-English (bug #66).
   > Tool strip combo box slightly flickers when updating item list, e.g. [Find Pattern] (bug #402).
   > Combo box cannot restore some corner-case cursor positions (bug #403).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] or [Find] items (bug #347).
   > When [Send Text] or [Send File] is hidden, resizing the panel doesn't properly work (bug #412).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
   > Vertical scrolling of monitors while a lot of data is being transmitted and while items are
     selected may lead to a severe drop of the overall performance (related to bug #383).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
   > Issue with layout when closing an MDI child (bug #399).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port may lead
     to a deadlock or 'ObjectDisposedException' or 'UnauthorizedAccessException'. It happens due to
     a bug in the .NET 'SerialPort' class for which Microsoft seems to have no plans fixing. YAT is
     applying several patches to try working around the issue (bugs #224, #254, #293, #316, #317,
     #345, #382, #385, #387, #401, #442). To prevent this issue, refrain from disconnecting a
     device while its port is open. Or, manually close the port after the device got disconnected.
- The "\!(PortSettings())" keyword is yet limited to serial COM ports (feature request #71).
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Line content and EOL may be sent in two separate chunks, because the parts are handled slightly
  after each other. Delay could be eliminated but requires some refactoring (feature request #333).
- Automatic responses and actions work fine as long as the received chunks do not contain more than
  one trigger and do not spread across multiple lines. Limitation could be eliminated but requires
  some refactoring (feature request #366).
- Automatic actions [Filter] and [Suppress] do not get reapplied on refresh (feature request #367).
- Text terminals: Wait for response not yet implemented (feature request #19 and bug #176).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Switching log off may take several seconds, during which YAT is unresponsive (bug #459).
- Running YAT for a long period, or creating many terminals, results in memory leaks, which result
  in a gradual increase of the memory consumption (RAM) (bugs #243, #263 and #336, root cause yet
  unknown, could even be a limitation of the memory management of the .NET Runtime).


YAT 2.0 Final Version 2.0.0 :: 2018-04-13
----------------------------------------------------------------------------------------------------

New:
- Option to break lines on each sent or received chunk (feature request 335).
  Useful for message- rather than stream-oriented communication, e.g. most use cases of UDP/IP.

Important changes:
- UDP/IP terminals by default now use "[None]" as EOL sequence (related to feature request #335).
- UDP/IP related settings 'break lines on each sent or received chunk' and 'EOL sequence' are
  automatically changed when the port type gets changed. This automatism is only applied if the
  settings are at their defaults, i.e. have not been changed by the user; otherwise, the user is
  asked whether the settings shall be changed (related to feature request #335).
- Simple find/search function now allows to explicitly enable/disable the regular expression
  option (feature request #332, related to features #11 and #79 implemented in previous release).
- Option to enable/disable <...> and \... escape sequences has been separated for [Send Text] and
  [Send File]. By default, escapes are enabled for [Send Text] and disabled for [Send File].
- [Send File] now also sends (formatted) text files for binary terminals, including support for
  [Explicit Default Radix] and other send file related settings (bug #411).
- Location of some send related settings has changed (related to bug #411).
- The "DynamicIndex"/"DynamicTerminalIndex" command line option has been changed to "DynamicId"/
  "DynamicTerminalId" to emphasize that the value is a 1 (and not 0) based ID, incl. the option
  to use value 0 to select the currently active terminal.
- Binary distributions now contain DejaVu fonts for manual installation (feature request #331).

Fixed bugs:
- 'SplitterDistance' value related 'InvalidOperationException' on startup fixed (bug #409).
- 'SplitterDistance' value related 'ArgumentOutOfRangeException' on startup fixed (bug #408).
- 'NullReferenceException' under certain conditions when .yat file got deleted fixed (bug #407).

Limitations and known issues:
- General limitations of .NET Framework:
   > Unicode is limited to the basic multilingual plane (U+0000..U+FFFF) (feature request #329).
- General limitations of .NET Windows.Forms:
   > System display scaling other than 100% (96 DPI) results in minor distortions on Win 7 and
     before (bugs #85, #235, #375) and some blurring on Win 8 and above (feature request #310).
     The latter will be fixed with upgrading to .NET 4.7+ (feature request #229).
   > System error messages are output in local language, even though YAT is all-English (bug #66).
   > Tool strip combo box slightly flickers when updating item list, e.g. [Find Pattern] (bug #402).
   > Combo box cannot restore some corner-case cursor positions (bug #403).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] or [Find] items (bug #347).
   > When [Send Text] or [Send File] is hidden, resizing the panel doesn't properly work (bug #412).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
   > Vertical scrolling of monitors while a lot of data is being transmitted and while items are
     selected may lead to a severe drop of the overall performance (related to bug #383).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
   > Issue with layout when closing an MDI child (bug #399).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port may lead
     to a deadlock or 'ObjectDisposedException' or 'UnauthorizedAccessException'. It happens due to
     a bug in the .NET 'SerialPort' class for which Microsoft seems to have no plans fixing. YAT is
     applying several patches to try working around the issue (bugs #224, #254, #293, #316, #317,
     #345, #382, #385, #387, #401). To prevent this issue, refrain from disconnecting a device
     while its port is open. Or, manually close the port after the device got disconnected.
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Line content and EOL may be sent in two separate chunks, because the parts are handled slightly
  after each other. Delay could be eliminated but requires some refactoring (feature request #333).
- Text terminals: Wait for response not yet implemented (feature request #19 and bug #176).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Running YAT for a long period, or creating many terminals, results in memory leaks, which result
  in a gradual increase of the memory consumption (RAM) (bugs #243, #263 and #336, root cause yet
  unknown, could even be a limitation of the memory management of the .NET Runtime).


YAT 2.0 Epsilon Version 1.99.90 :: 2018-01-12
----------------------------------------------------------------------------------------------------

New:
- Simple find/search function for monitor contents added (feature requests #11 and #79).
- Recent TCP/IP and UDP/IP ports, remote hosts and local filters are remembered (feat. req. #273).
- Option to show a copy of the active monitor line in an additional text box, allowing to select
  and copy/paste characters and words (feature request #313).
- Automatic action feature, YAT can automatically invoke an action when receiving a configurable
  trigger sequence (feature requests #11, #314, #320, #325).
- Local time can optionally be shown in the main status bar (feature request #328).

Important changes:
- Cursor behavior of [Send Text] improved:
   > Cursor position and text selection is remembered (related to bugs #391 and #395).
   > Cursor no longer jumps to the end of the input box when sending the text (bug #395).
   > Cursor no longer jumps to the beginning of the input box after edit of recent (rel. bug #391).
- Shortcut of [Clear] changed from [Shift+Delete] to [Ctrl+L] (related to change stated above).
- Shortcut of [Save to File] changed from [Ctrl+F] to [Ctrl+T] (consequence of feat. #11 and #79).
- Automatic response trigger is highlighted, same as automatic action trigger (rel. to feat. #320).
- Automatic response extended by selection to respond the received trigger (related to feature
  requests #176, #252 implemented in version 1.99.50).
  This option combined with setting the trigger to "[Any Line]" makes YAT an echo server.
- Switching among automatic/manual vertical scrolling in monitor further improved, especially while
  continuous data is being received (related to bug #394 and feature request #323 implemented in
  previous release).
- Location of a few settings refined (workspace -vs- local user -vs- roaming user).
- Additional option to inhibit warning if a port/interface/device is no longer available (bug #392).
- Additional command line options 'KeepTerminalClosed/Stopped' and 'KeepLogOff' (bug #392).
- Additional command line option alias 'StartTerminal' for 'OpenTerminal' (related to bug #392).

Fixed bugs:
- Monitors no longer scroll to top as soon as display buffer has been filled (bugs #394 and #398 as
  well as feature request #326; related to feature request #323 implemented in previous release).
- Focus no longer moves away from [Send Text] when switching applications (bug #391).
- Standard word selection shortcuts [Ctrl+Shift+Left|Right] also work when commands are predefined.
- Shortcuts to navigate command pages changed from [Ctrl+Shift+Left|Right] to [Ctrl+Alt+Left|Right]
  and [Ctrl+Shift+F1..F12] to [Ctrl+Alt+1..9] as well as shortcuts to 'Copy to Send Text' changed
  from [Alt+Shift+F1..F12] to [Ctrl+Shift+F1..F12] (consequence of change above).
- Endianness of multi-byte encoded characters fixed, UTF-8 no longer results in spurious warning
  messages (bug #400, regression of bug #343 fixed for version 1.99.70).
- Superfluous spaces for multi-byte LE encodings fixed (related to bug #400 and feat. request #271).
- Code page of UTF-32 LE/BE encodings fixed (related to bug #400).
- 'UnauthorizedAccessException' on no longer valid log file path fixed (bug #404).
- 'ArgumentOutOfRangeException' when command line arguments refer to an empty workspace fixed.

Limitations and known issues:
- General limitations of .NET Framework:
   > Unicode is limited to the basic multilingual plane (U+0000..U+FFFF) (feature request #329).
- General limitations of .NET Windows.Forms:
   > System display scaling other than 100% (96 DPI) results in minor distortions on Win 7 and
     before (bugs #85, #235, #375) and some blurring on Win 8 and above (feature request #310).
     The latter will be fixed with upgrading to .NET 4.7+ (feature request #229).
   > System error messages are output in local language, even though YAT is all-English (bug #66).
   > Tool strip combo box slightly flickers when updating item list, e.g. [Find Pattern] (bug #402).
   > Combo box cannot restore some corner-case cursor positions (bug #403).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] or [Find] items (bug #347).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
   > Vertical scrolling of monitors while a lot of data is being transmitted and while items are
     selected may lead to a severe drop of the overall performance (related to bug #383).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
   > Issue with layout when closing an MDI child (bug #399).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port may lead
     to a deadlock or 'ObjectDisposedException' or 'UnauthorizedAccessException'. It happens due to
     a bug in the .NET 'SerialPort' class for which Microsoft seems to have no plans fixing. YAT is
     applying several patches to try working around the issue (bugs #224, #254, #293, #316, #317,
     #345, #382, #385, #387, #401). To prevent this issue, refrain from disconnecting a device
     while its port is open. Or, manually close the port after the device got disconnected.
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Text terminals: Wait for response not yet implemented (feature request #19 and bug #176).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Running YAT for a long period, or creating many terminals, results in memory leaks, which result
  in a gradual increase of the memory consumption (RAM) (bugs #243, #263 and #336, root cause yet
  unknown, could even be a limitation of the memory management of the .NET Runtime).


YAT 2.0 Delta Version 1.99.80 :: 2017-10-15
----------------------------------------------------------------------------------------------------

New:
- Additional setting and keywords "\!(FramingErrorsOn|Off|Restore)" that allows configuring serial
  COM port behavior on framing errors. Useful when e.g. changing baud rates (feature request #321).

Important changes:
- Additional workaround applied to prevent potential 'ObjectDisposedException' or
  'UnauthorizedAccessException' when disconnecting USB/RS-232 converters (USB CDC) without closing
  the serial COM port (bug #382).
  Workaround also applies when undocking or hibernating a computer running YAT without closing the
  serial COM port, and when restarting devices that implement a virtual serial COM port (USB CDC).
- Option to disable user interaction question when a serial COM port, a local network interface or
  a USB Ser/HID device is no longer available; terminal will silently stay closed (feat. req. #316).
- Improved speed on sending and receiving, preventing application freeze on fast data (bug #383).
- Improved responsiveness to send requests while receiving a lot of fast data, as well as
  responsiveness to receive data while sending a lot of fast data (rel. to bugs #305, #380, #383).
- Automatic vertical scrolling of monitor is not only suspended if one or more lines are selected
  but also, if the scroll bar is moved away from the bottom of the monitor (feature request #323).
- Break [Ctrl+B] can now also be used to break sending a file (bug #305 and feature request #295).
- Auto-reconnect of TCP/IP client terminals enabled by default.
- Text input now supports the [Ctrl+Backspace] shortcut and multi-line text input also the [Ctrl+A]
  shortcut (feature request #317 as workaround to limitation of .NET Windows.Forms).
- Warning on invalid multi-byte encoded byte sequences for string, character and Unicode radix.
- Option to display the date has been merged with option to display the time, but it is now possible
  to configure the format (feature requests #31, #291, #319 and related to former feature req. #14).
  In addition, options to display the time span as well as the time delta have been added.
- 'Comments' exclusion on sending has been migrated to 'Text' exclusion that is now supporting
  regular expression patterns instead of plain strings (feat. #307). The change adds the possibility
  to omit empty lines. Attention, former 'Comment indicators' settings will have to be reapplied.

Fixed bugs:
- Serial COM port switching again properly works (bug #376).
- Serial COM port sending at very low baud rates again properly works (bug #379).
- Issue with UDP/IP server after connection reset fixed, automatically receiving again (bug #381).
- Monitor can again be cleared when terminal is closed (bug #380).
- Calculation of buffer line numbers fixed (related to bug #380).
- Calculation of length of multi-byte encoded EOL sequences fixed.
- Erroneous error message when changing log file separator fixed (bug #378).
- 'InvalidOperationException' when defining user defined log file separator or monitor format
  enclosure or separator fixed (partly related to bug #378).
- Minor issues with predefined and send commands fixed (parts of bug #308).
- Description of predefined commands can be changed again (bugs #377 and #386).
- Context menu shortcuts are no longer executed when a dialog is open (bug #300).
- Predefined command page navigation shortcuts fixed (related to bug #300).
- Predefined command panel width change issue in case Tx or Rx panel is shown fixed (bug #384).
- Saving and restoring the location in case of manual terminal layout fixed (bug #252).
- System display scaling other than 100% mostly fixed for Win 7 and before (bugs #85, #235, #375).

Limitations and known issues:
- General limitations of .NET Windows.Forms:
   > System display scaling other than 100% (96 DPI) results in minor distortions on Win 7 and
     before (bugs #85, #235, #375) and some blurring on Win 8 and above (feature request #310).
     The latter will be fixed with upgrading to .NET 4.7+ (feature request #229).
   > System error messages are output in local language, even though YAT is all-English (bug #66).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] items (bug #347).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
   > Vertical scrolling of monitors while a lot of data is being transmitted and while items are
     selected may lead to a severe drop of the overall performance (related to bug #383).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of serial COM ports on disconnect, undock or hibernate without closing the port may lead
     to a deadlock or 'ObjectDisposedException' or 'UnauthorizedAccessException'. It happens due to
     a bug in the .NET 'SerialPort' class for which Microsoft seems to have no plans fixing. YAT is
     applying several patches to try working around the issue (bugs #224, #254, #293, #316, #317,
     #345, #382, #385, #387). To prevent this issue, refrain from disconnecting a device while
     its port is open. Or, manually close the port after the device got disconnected.
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Text terminals: Wait for response not yet implemented (feature request #19 and bug #176).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Running YAT for a long period, or creating many terminals, results in memory leaks, which result
  in a gradual increase of the memory consumption (RAM) (bugs #243, #263 and #336, root cause yet
  unknown, could even be a limitation of the memory management of the .NET Runtime).


YAT 2.0 Gamma 3 Version 1.99.70 :: 2017-07-04
----------------------------------------------------------------------------------------------------

New:
- [Send Text] without EOL by [Ctrl+Enter] or [Ctrl+F3] (feature requests #281, #283, #285).
- Option to send data in Unicode notation as "\U+...." or C-style "\u...." or YAT-style "\U(....)
  as well as option to show data in Unicode notation "U+...." added (feature request #271).
- Option to disable BOM (Unicode encoding preamble) when logging in UTF-8 added (bug #363).
- Option to disable formatting; useful when highest data throughput slows down the view (feat. #39).
- Keywords with arguments "\!(Delay(<ms>))", "\!(LineDelay(<ms>))", "\!(LineInterval(<ms>))" and
  "\!(LineRepeat(<n>))" added (feature requests #13, #139).
- Additional keyword "\!(ReportID(<ID>))" allows changing the USB Ser/HID report ID while sending and
  thus, allows to sequentially write to and read from multiple report IDs (feature request #296).
- Additional USB Ser/HID preset 'Signal 11 HID API' and changed presets 'Plain' and 'Common' to
  cover more use cases related to raw binary data (feature request #297 and bug #367).

Important changes:
- Option to display non-payload USB Ser/HID data (related to feature req. #296, #297 and bug #367).
- Option to skip empty lines when sending a text file (feature request #298).
- No longer showing empty lines that had only contained a previous line's hidden EOL (feat. #299).
- No longer showing a potentially annoying message box if no serial COM ports or no local network
  interfaces or no HID capable USB devices are currently available.
- Serial COM port that are in use are no longer simply labeled "(in use)" but rather "(in use by
  this terminal)", "(... terminal<ID>)" or "(... other application)" (feature requests #201, #207).
- Notes and links regarding non-intrusive RS-232 monitor/sniffer/spy cables and devices added to
  'About' dialog (related to feature requests #152, #198, #288).
- Option to disable all "\!(...) keywords" (former feature request #183) has been migrated to an
  option to disable *all* escape sequences, i.e. all "<...>" and "\..." sequences (feat. #302).
- When nothing has changed in a terminal, its file (.yat) is no longer auto-saved (bug #365).
- When evaluating relative paths of workspace/terminal/send/log files, the current directory is
  always taken into account (feature request #292).
- Default file location has been refined from "<User>\Documents" to "<User>\Documents\YAT"
  (related to feature request #292).
- Warning in case of yet incomplete RTF or XML log files (bug #356).
- Automatically generated backup files are now placed into standard temporary folder (feat. #275).
- Internal event handling refined, resulting in increased stability on stopping/closing/exiting
  (related to feature request #173 and bugs #310, #339).
- SourceForge file structure simplified, split into 'Current' and 'Previous' (feature request #278).
- Binary distribution added because installer is no longer compatible with Win XP (bugs #318, #369).
- Started to migrate test environment from NUnit V2 to V3, but reverted to 2.6.4 again (feat. #293).
- NUnit tests migrated from classic to constraint model (related to feature request #293).
- NUnit framework assemblies placed into solution structure instead of referring to installation.

Fixed bugs:
- UDP/IP PairSocket enabled to communicate with a remote computer (bug #368).
- TCP/IP sockets no longer block when exiting too quickly (bug #341).
- Potential application freeze when clearing monitors/repositories fixed (bug #361).
- Potential 'NullReferenceException' in binary terminal settings fixed (bug #362).
- Option to change endianness of multi-byte encoded characters fixed (bug #343).
- Presets of serial COM port settings work again (bug #372).
- Wrong active/inactive state of log menu items fixed (bug #366).
- Catch-all of unhandled synchronous exceptions fixed (bug #310) as well as
  catch-all of unhandled asynchronous exceptions improved (feature request #173).

Limitations and known issues:
- General limitations of .NET Windows.Forms:
   > System display scaling other than 100% results in partly clipped controls (bugs #85 and #235).
   > System error messages are output in local language, even though YAT is all-English (bug #66).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] items (bug #347).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of USB/RS-232 converters (USB CDC) on disconnect, undock or hibernate without closing
     the serial COM port may require to reset the converters, i.e. disconnect and reconnect them,
     or restart the computer. In addition, it may be required to disconnect or reset any device
     sending continuous data. Otherwise, the related serial COM ports may no longer be opened by
     an application. Issue is being reported by many users of .NET, but Microsoft seems to have
     no plans fixing it. If an 'ObjectDisposedException' or 'UnauthorizedAccessException' still
     occurs, the serial COM port connection monitoring has to be disabled in the terminal settings.
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Text terminals: Wait for response not yet implemented (feature request #19 and bug #176).
- Breaking while sending files not possible yet (bug #305 and feature request #295).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Running YAT for a long period, or creating many terminals, results in memory leaks, which result
  in a gradual increase of the memory consumption (RAM) (bugs #243, #263 and #336, root cause yet
  unknown, could even be a limitation of the memory management of the .NET Runtime).


YAT 2.0 Gamma 2'' Version 1.99.52 :: 2016-09-30
----------------------------------------------------------------------------------------------------

Important changes:
- Preset of 256000 baud added to serial COM port settings (feature request #276).
- Binary terminals: Length line break enabled by default.

Fixed bugs:
- Binary terminals: Logging in 'Neat' format fixed (bug #359).
- Binary terminals: 'ObjectDisposedException' when changing length line break settings (bug #358).

Limitations and known issues:
- Same as previous release, see below.


YAT 2.0 Gamma 2' Version 1.99.51 :: 2016-09-17
----------------------------------------------------------------------------------------------------

Important changes:
- Distribution without .NET Runtime restored to .zip due to limitation of Internet Explorer with
  .msi downloads (even though .msi has been created with a Microsoft tool...) (bugs #318 and #323).

Fixed bugs:
- Binary terminals: Radix 'String' and 'Char' fixed (bug #357).

Limitations and known issues:
- Same as previous release, see below.


YAT 2.0 Gamma 2 Version 1.99.50 :: 2016-09-16
----------------------------------------------------------------------------------------------------

New:
- UDP/IP functionality improved:
   > Possibility to receive from multiple sources when using 'UDP/IP Server' (feature request #248).
   > Dedicated settings for server, client and socket (related to feature request #248).
- USB Ser/HID can be configured to XOn/XOff flow control (feature request #226).
- USB Ser/HID discovery improved, serial string may optionally be ignored (feature request #261).
- Automatic response feature, YAT can automatically respond to a request (feature reqs. #176, #252).
- Keyword "\!(LineInterval)" implemented in addition to the existing "\!(LineDelay)"; useful along
  with "\!(LineRepeat)", line will be sent in more or less accurate interval (feature request #255).
- Binary terminals: Break lines before a sequence is also supported (feat. reqs. #76, #140, #180).
- Selectable default parse radix, e.g. useful when sending binary data (feat. reqs. #238, #270).
- Options to define the enclosure and spacing of display elements added (related to bug #292).
- Option to display the port as e.g. "COM1" or "127.0.0.1:10000" (feature request #14).
- Option to display the direction as "<<" (Tx) and ">>" (Rx) (feature request #14).
- Option to display the date in addition to the time (related to feature request #14).
- Options to hide 0x00 and/or 0xFF (feature req. #243).
- Option to encode neat logs in terminal encoding instead of UTF-8 (related to feature request #69).
- Logging in RTF format implemented (feature request #233). Note that the log file's RTF structure
  is incomplete while logging is ongoing. The file can only be opened by an RTF reader (e.g. Word)
  after logging has finished, i.e. logging has been switched off or the terminal is closed.
- Logging in XML format implemented (feature requests #26 and #27). Note that the log file's XML
  structure is incomplete while logging is ongoing. The file can only be opened by an XML reader
  after logging has finished, i.e. logging has been switched off or the terminal is closed.
- Line numbers may indicate the total number of transmitted lines (feature request #265).
- Selectable background color added to format settings (feature request #250).
- Window can be configured to always stay on top (feature request #241).

Important changes:
- 'Send Command' renamed to [Send Text] (related to feature request #252).
- Active terminal is highlighted/emphasized (feature request #247).
- Automatic terminal layout added. Use [Window > ...] for dedicated layout (feature request #247).
- If YAT is not the active app, a single click is now sufficient to execute an action (bug #210).
- Icons migrated from glyfx to FatCow (much larger variety) as preparation for the items below.
- Additional log menu items and toolbar icons added, including indication whether logging is
  switched on or off, as well as opening/viewing of log file (feature requests #69, #103, #245).
- XML schema on [Monitor > Save To File...] aligned with XML schema of logging in XML. Schema
  is saved in additional .xsd file (related to feature requests #26 and #27).
- Several other menu items and toolbar icons added (includes feature request #222).
- Parser is now capable to handle contiguous values such as \h(01020304) (related to bug #326).
- Parser error message improved in terms of accuracy of the error location (bug #268).
- File handling as well as error messages improved and unified (bugs #320 and #338).
- Lookup of serial COM ports improved (also fixes bug #23).
- New option to limit the serial COM port output to the selected baud rate - 25%.
- Handling of serial COM port RFR and DTR state improved (feature request #236 and bugs #203, #294).
- Handling of serial COM port XOff state fixed and improved (feature req. #216 and bugs #255, #295).
- Serial COM port software flow control options to send XOn more frequently added (feature #206).
- Superfluous control signal events of e.g. internal ports is now being handled (bugs #271, #277).
- Settings related to XOn/XOff and ASCII control character replacement improved (bug #319).
- Synchronization among outgoing and incoming data improved, preventing data mix-ups and exceptions
  (related to feat. reqs. #14, #252 as well as bugs #132, #275, #292, #321, #331, #333, #334, #346).
- Performance in terms of CPU and RAM usage improved (bugs #189, #243, #263, #302, #336).
- Adaptive monitor update rate significantly improved, it is now dependent on the CPU load.
- Number of bytes per line limited, in order to keep performance even in case of enormous lines.
- Implementation of keyword "\!(Clear)" improved, it now shortly waits before clearing (bug #251).
- Additional hints (tool tips) added to the settings dialogs (feature request #189).
- Help window can now be sized to display more/all content (feature request #237).
- Command line options fixed, extended and slightly changed (bug #335 and feature request #260).
- DejaVu fonts updated to 2.37
- Visual Studio upgraded to 2015 Community Edition, including installer (VSI).
- Distribution without .NET Runtime simplified to .msi only (bugs #318 and #323).
- Test board (serial COM ports, USB devices,...) created and test cases adapted accordingly.

Fixed bugs:
- Use of USB/RS-232 converters (USB CDC) on disconnect, undock or hibernate without closing the
  serial COM port no longer leads to an 'ObjectDisposedException' or 'UnauthorizedAccessException'
  in most cases (bugs #224, #254, #293, #316, #317, #345). However, it may still be needed to reset
  the converter, i.e. disconnect and reconnect it, or restart the computer. In addition, it may be
  required to disconnect or reset any device sending continuous data. Otherwise, related serial COM
  ports may no longer be opened. Issue is being reported by many users of .NET, but Microsoft seems
  to have no plans fixing it. If an 'ObjectDisposedException' or 'UnauthorizedAccessException' still
  occurs, the serial COM port connection monitoring has to be disabled in the terminal settings.
- TCP/IP local interface setting fixed:
   > Setting is now properly applied to all TCP/IP sockets (bug #322).
   > Setting extended to interface description/address pair (bugs #328 and #355).
- UDP/IP functionality fixed:
   > Can now properly receive from a remote host (bug #327).
   > Dedicated settings for server, client and socket (related to bug #248).
- Subsequent log files are now properly named according to the configured settings. File names that
  include the time stamp now properly use the time stamp of the open operation (related to feature
  requests #69, #103, #233, #245).
- Long monitor content is now displayed properly even when horizontally scrolling (bug #125).
- 'ExternalException' "A generic error occurred in GDI+" while drawing has been fixed by reverting
  from GDI+ to GDI (bugs #191, #266, #284, #286 and #325).
- .NET Windows.Forms MDI issues with window list worked-around (bugs #119, #180 and #213).

Limitations and known issues:
- General limitations of .NET Windows.Forms:
   > System display scaling other than 100% results in partly clipped controls (bugs #85 and #235).
   > System error messages are output in local language, even though YAT is all-English (bug #66).
   > Combo box text is compared case insensitively against item list, e.g. "aa" is changed to "AA"
     if that is contained in the item list, e.g. the recent [Send Text] items (bug #347).
   > Automatic completion for e.g. [Send Text] is not feasible to implement (feature request #227).
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163).
- MDI limitations of .NET Windows.Forms:
   > Issues with frame (bugs #29 and #30).
   > Issue with window list (bug #31).
- Serial COM port limitations of .NET Framework:
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101).
   > Use of USB/RS-232 converters (USB CDC) on disconnect, undock or hibernate without closing
     the serial COM port may require to reset the converters, i.e. disconnect and reconnect them,
     or restart the computer. In addition, it may be required to disconnect or reset any device
     sending continuous data. Otherwise, the related serial COM ports may no longer be opened by
     an application. Issue is being reported by many users of .NET, but Microsoft seems to have
     no plans fixing it. If an 'ObjectDisposedException' or 'UnauthorizedAccessException' still
     occurs, the serial COM port connection monitoring has to be disabled in the terminal settings.
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119).
- Keyword "\!(Delay(<TimeSpan>))" not yet implemented (feature request #139).
- Keyword "\!(Repeat(<Item>, <Repetitions>, <Delay>))" not yet implemented (feature request #13).
- Text terminals: Wait for response not yet implemented (feature request #19 and bug #176).
- Breaking while sending files not possible yet (bug #305).
- Sending immediately does not yet support special formats and commands (feature request #10).
- Running YAT for a long period, or creating many terminals, results in memory leaks, which result
  in a gradual increase of the memory consumption (RAM) (bugs #243, #263 and #336, root cause yet
  unknown, could even be a limitation of the memory management of the .NET Runtime).


YAT 2.0 Gamma 1'' Version 1.99.34 :: 2015-06-13
----------------------------------------------------------------------------------------------------

New:
- Serial COM ports can better be configured in terms of sending (feature request #235)
   > Output buffer size can be limited; useful when using hardware and/or software flow control
   > Send rate can be limited; useful if a device cannot process more than a certain amount of data

Important changes:
- Serial COM port send chunk size can no longer be configured (related to feature request #235)

Fixed bugs:
- 'SocketException' when resolving URL of a not yet available remote host fixed (bug #312)
- Invalid handling of remote host IP address fixed (bugs #313, #314 and #315)
- Local user settings (previous workspace/terminals, recent files, window location, preferences) are
  again loaded from the latest previous version (bug #311)

Limitations and known issues:
- Same as previous release, see below.


YAT 2.0 Gamma 1' Version 1.99.33 :: 2015-06-07
----------------------------------------------------------------------------------------------------

Fixed bugs:
- 'FormatException' when opening the terminal settings of a terminal that is based on an existing
  .yat file fixed, additional test cases added to regression testing (bugs #306 and #307)
- Issues with [Send File] fixed, handling of recent commands and shortcuts improved (bug #304)

Limitations and known issues:
- Same as previous release, see below.


YAT 2.0 Gamma 1 Version 1.99.32 :: 2015-06-01
----------------------------------------------------------------------------------------------------

New:
- Keyword "\!(LineRepeat)" added, count can be configured in advanced settings (feat. #13 and #162)
- Support for variants of USB Ser/HID (e.g TI MSP430 HID API) added, report format can be specified
  in the USB Ser/HID settings (feature requests #193 and #209)
- Write protected .yat files are marked '#' and are not attempted to be written automatically,
  write protected .yaw files are not attempted to be written either (feature request #194)
- Predefined commands can now be copied to 'Send Command' using shortcuts Alt+Shift+Fx (feat. #218)
- Tool tips added to command buttons (feature request #205, also related to feature request #220)
- Terminal window setting (manual/cascade/tile) is now stored in the workspace and re-applied when
  starting YAT or re-sizing the main form (feature requests #40, #141 and #170)

Important changes:
- "\!(...)" keywords can optionally be disabled (feature request #183)
- Retrieving serial COM port captions from the system can optionally be disabled in 'Preferences'
  Disabling can be useful on computers where discovery of serial COM ports takes too long
- Binary terminals: No longer by default replace control characters (feature request #204)
- Serial COM port XOn/XOff flow control chars can optionally be hidden for 'Manual Software' and
  'Manual Combined' (feature request #190)
- Serial COM port XOn/XOff flow control state and count is only indicated for 'Manual Software' and
  'Manual Combined', this is due to a limitation of the .NET/Win32 serial port driver (bug #214)
- Serial COM port modem baud rates 28.8 and 33.6 added to defaults (related to feature request #193)
- USB Ser/HID serial string comparison is no longer case-sensitive (Windows behavior) (bug #279)
- Time stamps are now output in milliseconds to improve readability (feature request #196)
- Format exceptions while sending are now reported as error messages within the terminal (bug #270)
- Error handling in case of deleted .yaw and .yat files improved (related to feature request #194)
- Command line arguments can also be used to preset the settings of the initial 'New Terminal'
  dialog to fixed values, independent on the values that were selected before (related to bug #262)
- Command line console output is now channeled to stdout or stderr depending on whether it is normal
  or error information (feature request #192)
- More information on virtual serial port tools added to [Help > About] (feature request #198)
- DejaVu fonts updated to 2.34
- Visual Studio upgraded to 2013 Community Edition, incl. installer (VSI) (feature request #221)
- Installer split into separate packages for x86 and x64 (feature requests #175 and #191)
- Installer improved, now using YAT specific banner and texts (related to requests #175 and #191)
- NUnit updated to 2.6.4, other development tools (GhostDoc, StyleCop, FxCop) updated too

Fixed bugs:
- Duplicated and/or split display representation fixed (bugs #258, #264 and #265)
- Manually entered serial COM port, remote TCP/IP host or USB Ser/HID device is now properly
  restored when opening the terminal settings dialog (bug #259)
- Manually entered non-standard baud rate is properly restored in settings dialog again (bug #283)
- Shortcuts are now always routed to the correct terminal window (i.e. MDI child) (bug #152)
- Handling of recent commands in 'Send Command' improved, arrows up/down properly work again
- Representation of description of multi-line commands in 'Send Command' improved
- Issues with 'Send Command' fixed, additional test cases added (bugs #276, #282 and #291)
- Issues with line break fixed (bugs #269 and #281)
- Issue with escape sequences following a C-style escape fixed (bug #290)
- Exception while reading stream in YAT.Domain.Parser.Parser.TryParse() fixed (bug #261)
- Exception while changing settings of a UDP/IP terminal fixed (bugs #289 and #301)
- Exceptions and issues while closing terminal or application fixed (bugs #72, #267, #287, #288)
- Memory leak when subsequently creating and closing terminals fixed (bug #263)
- Excessive memory occupation after standby fixed (bug #243)
- 'MissingMethodException' of 'Boolean System.Threading.WaitHandle.WaitOne(Int32)' fixed by adding
  .NET 3.5 SP1 as prerequisite to setup/installer (bug #273)
- Start from command line no longer always generates a terminal (bug #262)
- 'InvalidOperationException' when starting YAT with /r command line option fixed (bug #260)
- 'NullReferenceException' when starting YAT with /tf command line option fixed (bug #280)
- 'ThreadException' upon copy of exception data to clipboard fixed (bug #245)

Limitations and known issues:
- General limitations of .NET Windows.Forms
   > If YAT is not the active application, two clicks are required to execute an action. Reason:
     In .NET Windows.Forms the first click only activates the application but doesn't execute
     anything (bug #210)
   > System error messages are output in local language, even though YAT is all-English (bug #66)
   > Automatic horizontal scrolling of monitors is not feasible to implement (feature request #163)
- MDI limitations of .NET Windows.Forms
   > Issues with frame (bugs #29 and #30)
   > Issues with window list (bugs #31, #119, #180 and #213)
- Long monitor content is not displayed properly when horizontally scrolling (bug #125)
- Serial COM port limitations of .NET
   > Support for ports named other than "COM..." isn't supported by .NET (feature request #101)
- Serial COM port limitations of certain hardware, e.g. certain USB/RS-232 converters (USB CDC)
   > RFR/CTS flow control 'Hardware' and 'Hardware Combined' may not be supported (bug #203)
   > Manual RFR/CTS flow control 'Manual Hardware' and 'Manual Hardware Combined' may not be
     supported on Win7/64 (bug #254)
   > Handling of serial COM port break states may not be supported (feature request #109)
- Use of USB/RS-232 converters (USB CDC) while hibernate or undock without closing the serial COM
  port leads to 'ObjectDisposedException' in the system internal infrastructure (bugs #293 and #316)
- Use of internal serial COM port may lead to slowdown of the application on certain computers; due
  to superfluous events triggered by the control signals (bugs #271, #277); root cause yet unknown
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature request #119)
- Keyword "\!(Delay(<TimeSpan>))" not yet implemented (feature request #139)
- Keyword "\!(Repeat(<Item>, <Repetitions>, <Delay>))" not yet implemented (feature request #13)
- Wait for answer line (text terminals) not yet implemented (feature request #19 and bug #176)
- Breaking while sending files not possible yet (bug #305)
- Sending immediately does not yet support special formats and commands (feature request #10)
- Logging is limited to text, RTF format not yet implemented (feature requests #233)
- XML logging not yet implemented, definition of schema pending (feature requests #26 and #27)


YAT 2.0 Beta 4 Candidate 2 Version 1.99.30 :: 2013-02-02
----------------------------------------------------------------------------------------------------

New:
- Line numbers can optionally be displayed in monitors (feature request #3442828>#167)
- Keywords "\!(Delay)" and "\!(LineDelay)" implemented, time span in milliseconds can be configured
  in advanced settings (related to feature requests #3105414>#138, #3105478>#139 and #3538899>#179)
- Optional support for array options added to MKY.CommandLine (feature request #3571456>#182)
- Additional executable 'YATConsole.exe' added to ensure proper command line operation in case of
  'cmd' as well as 'PowerShell' (bug #3482103>#222)

Important changes:
- Update to DejaVu fonts 2.33
- [File > Open] now also allows to select workspace files (feature request #1917388>#41)
- Monitors automatically start vertical scrolling again if the last item gets selected
- Massive refactoring of the send data/event path, implementation is now fully asynchronous
   > Fixes several display and performance issues (bugs #3072919>#157, #3137968>#175, #3292415>#198)
   > Received data is no longer displayed with delay when sending multi-line commands or files
   > Allows to implement asynchronous send features such as keywords "\!(Delay)" and "\!(LineDelay)"
     and upcoming features #1808500>#13, #2455838>#71, #3105414>#138, #3105478>#139, #3406521>#162,
     #3488645>#176 and #3538899>#179
- Massive refactoring of the display data/event path, implementation is now fully asynchronous
   > Prevents race conditions while processing fast and large amounts of data
   > Fixes several display and log issues with mixed up data, and improves performance
   > Fixes bugs #2005758>#83, #2455804>#93, #2868735>#126, #2981794>#148, #3176813>#184,
     #3284550>#194 and #3480565>#221
- Serial COM port, USB as well as TCP/IP and UDP/IP socket functionality of MKY.IO.Serial has been
  split into separate assemblies to allow dedicated use of one of the new assemblies without
  unnecessary dependencies to the other parts (feature request #3388950>#156)
- Serial COM port break state counts added (feature request #187)
- Serial COM port flow control counts added in case of manual flow control (feature request #187)
- Serial COM port uses the official term RFR (Ready For Receiving) instead of RTS (Ready To Send)
- Additional help content on serial port errors added (feature requests #2213647>#66, #3440986>#166)
- Error message in case a serial port cannot be opened has been improved (bug #3565648>#239)
- Issue with predefined commands in case of concurrent YAT instances fixed (bug #3464323>#218)
   > Implemented by use of a named mutex as suggested in the respective comments
   > Also fixes use of same setting file by concurrent YAT instances (bug #3540438>#236)
- Proper handling if a .yaw or .yat was located on a storage that has been removed
   > Fixes bugs #2455825>#96 and #3595185>#249
   > Fixed including a refactoring of the save/close/exit procedure
- Schemas and defaults of all former settings filed and versioned, version of settings added to all
  three types of settings (related to bugs #3450553>#208 and #3535709>#231)
- .NET XML serialization infrastructure extended by schema for GUID items (bug #3535709>#231)
- BoolEx renamed to BooleanEx for consistency with the .NET type Boolean (bug #3533831>#229)
- The ALAZ socket library was considered to be replaced by a different library, but then decided to
  be kept and instead partially reverted to 2.0, see "\MKY\MKY.IO.Serial.Socket\!-Doc" for details
- Code reuse of the USB Ser/HID infrastructure somewhat documented (feature request #3577235>#185)
- All projects explicitly set to warning level 4, already used to be level 4 but implicitly
- Code analysis and improvements using StyleCop finalized (feature request #2970222>#115)
- Code analysis and improvements using FxCop mostly finalized (feature request #2970221>#114)
- x86 and x64 configurations added to all projects to enable inheriting projects to build dedicated
  x86 and x64 binaries (also see \!-Doc.Developer\ProjectSetup.txt) (feature request #3482248>#175)
- YAT on SourceForge has been upgraded to the new SourceForge 'Allura' platform
   > All feature requests and bug reports have been renumbered

Fixed bugs:
- 4 data bits are invalid for serial COM ports, 4 has been removed from list (bug #3454543>#212)
- Issues with USB Ser/HID reports that were exactly or larger than the maximum report size fixed
  (bugs #3463404>#216, #3464116>#217 and #3584852>#247)
- Empty lines are no longer skipped when not showing EOL (bug #2898163>#136)
- Edit shortcuts such as Ctrl-A and Ctrl-C reenabled in 'Send Command' box (bug #3459888>#215)
- Recent 'Send Command' items are again properly loaded from saved settings (bug #3450553>#208)
- Optional replacement of space by open box character again works (bug #3451736>#209)
- Log file separator 'Underline' fixed
- Default EOL comment indicators can now also be removed (bug #3581368>#244)
   > This fix required a change in the settings schema, custom indicators have to be entered again
- Binary length line break fixed, again works correctly
- Missing tool tip on main window fixed, wrong tool tip on terminal window fixed (bug #3471809>#219)
- Printer dialog also gets shown on 64-bit systems
- 'SaveAs' dialog no longer shows .yat.yat in case of already saved files (bug #3532391>#227)
- Handling of 'FileNotFoundException' in YAT.Gui.Forms.WelcomeScreen (bug #3576101>#241)
- Handling of 'UnauthorizedAccessException' in YAT.Model.Terminal/Workspace (bug #3533201>#228)
- Handling of 'InvalidOperationException' in ALAZ.SystemEx.BaseSocketConHost (bug #3528765>#226)
- 'NullReferenceException' in YAT.Log.Logs fixed (bug #3534799>#230)
- 'IndexOutOfRangeException' in YAT.Domain.RawRepository fixed (bug #3483085>#223)
- 'ArgumentException' and 'OverflowException' in MKY.Time.Rate fixed (bug #3479634>#220)
- Cancel during port scan should no longer result in an exception (bug #1804920>#23)
- Improvement of modal behavior in case of console and non-view execution (bug #3516441>#225)
- Proper startup when YAT is started minimized or without view (bug #3542973>#237)

Limitations and known issues:
- General limitations of .NET Windows.Forms
   > If YAT is not the active application, two clicks are required to execute an action. Reason:
     In .NET Windows.Forms the first click only activates the application but doesn't execute
     anything (bug #3454532>#210)
   > System error messages are output in local language, although YAT is all-English (#1927786>#66)
- MDI limitations of .NET Windows.Forms
   > Issues with frame (bugs #1808492>#29 and #1808493>#30)
   > Issues with window list (bugs #1808494>#31, #2846917>#119, #3160095>#180 and #3454550>#213)
   > Issue with re-routing shortcuts when activating a different MDI child (bug #2996684>#152)
- Long monitor content is not displayed properly when horizontally scrolling (bug #2865562>#125)
- Support for serial ports which are named other than "COM..." isn't supported by .NET
  (feature request #2848228>#101)
- Serial COM port RFR/CTS flow control 'Hardware' and 'Hardware Combined' may not be supported
  on certain hardware, e.g. certain USB/RS-232 converters (bug #3417097>#203)
- Serial COM port manual RFR/CTS flow control 'Manual Hardware' and 'Manual Hardware Combined' may
  not be supported on Win7/64 on certain hardware, e.g. certain USB/RS-232 converters (bug #254)
- Serial COM port XOn/XOff flow control state is properly indicated for 'Manual Software' and
  'Manual Combined' only, and always on for 'Software' and 'Combined' (bug #3456205>#214)
- Handling of serial COM port break states (feature #2932691>#109) may not be supported on certain
  hardware, e.g. USB/RS-232 converters
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature #2982052>#119)
- Keyword "\!(Delay(<TimeSpan>))" not yet implemented (feature request #3105478>#139)
- Wait for answer line (text terminals) not yet implemented (feature request #1808509>#19)
- Sending immediately does not yet support special formats and commands (feature req. #1808496>#10)
- XML logging not yet implemented, definition of schema pending (bugs #1849227>#26 and #1849228>#27)


YAT 2.0 Beta 4 Candidate 1 Version 1.99.28 :: 2011-12-05
----------------------------------------------------------------------------------------------------

New:
- Support for C-style escape sequences (feature request #3044830)
- Text terminals: Comments can be chosen to be ignored while sending (feature request #2848298)
   > Comment indicators can be configured in [Terminal > Settings > Text Settings]
   > C/C++/C#/Java style "//" and Basic/BAT/DOS style "REM" comment indicators are predefined
- 'Manual' flow control split into 'Manual Hardware', 'Manual Software' and 'Manual Combined'
- Serial ports: XOn/XOff state is indicated (feature request #3066635)
   > Applies to 'Software', 'Combined', 'Manual Software' and 'Manual Combined' flow control
   > XOn/XOff can be manually toggled in case of 'Manual Software' and 'Manual Combined'
- Serial ports: Auto-reopen implemented (feature request #1960299)
   > Workaround for .NET deadlock issue in System.IO.SerialPort applied, limitation removed
   > Also fixes exceptions in case of disconnect (bugs #2981793, #3093159 and #3372435)
   > Useful for USB Ser/CDC connections such as USB to serial converters or other Ser/CDC devices
- Byte and line data rate per second added to monitors (feature requests #2846784 and #3274066)
- Handling of terminal indices finalized (feature request #3091859)
   > Fixed indices are persistently saved and restored upon loading the workspace
   > Dynamic indices are automatically restored correctly
- Powerful command line argument handling implemented related to the feature requests stated above
  (feature request #2991946, also fixes feature request #2745211)
   > Attribute based argument implementation including test environment and runtime validation
   > Based on the NUnit command line argument infrastructure
- All major terminal settings are now also available when creating a new terminal as well as when
  calling YAT from the command line (feature requests #3162725 and #3391925, related to feature
  request #2991946 listed above)

Important changes:
- The monitor update rate is now dependent on the data rate, i.e. when more data is transmitted or
  received, the update rate is reduced, results in better performance (feature request #3274073)
- Monitor display status settings relocated from 'Display' to 'Status' to improve speed on showing
  the status labels, i.e. no monitor update is needed anymore (related to feature request #3274073)
- Data sending in MKY.IO.Serial.SerialPort switched from synchronous to asynchronous in order to
  allow proper handling of XOn/XOff and RTS/CTS flow control
- Serial COM ports RTS and DTR states are no longer stored persistently in case of manual flow
  control (related to feature requests #2932691 and #3066635 and bug #3432512)
- Parity error replacement removed since parity errors are displayed as error text inside terminal
- Break states are only indicated and modifiable if selected in 'AdvancedSettings'
- Shortcut for window layout added: [Ctrl+Alt+C/H/V] layouts cascaded/horizontal/vertical
- Behavior of concurrent instances of YAT verified (feature request #2842713)
   > Already seems to work fine, test case added and successfully passed, limitation removed
- Exception handling refactored, now using 'Application.ThreadException' for 'Windows.Forms'
  and 'AppDomain.UnhandledException' for all other threads (also fixes bug #3292682)
- 'Unhandled Exception' now shows all information including inner exceptions (bug #3290314)
- MKY.Data added
- MKY.Settings.Settings renamed to MKY.Settings.SettingsItem
- MKY.IO and MKY.IO.Net added to prepare refactoring of MKY.IO.Serial (feature request #3388950)
- Update to NUnit 2.5.10
- "_<Base|Data|Doc|Test>" renamed to "!-<Base|Data|Doc|Test>"
- Product version added to header of each source code file (feature request #3418320)

Fixed bugs:
- YAT no longer asks twice whether to save (bug #3121250)
   > Only applies if [File > Preferences... > Save current workspace automatically] is 'No'
- Serial COM ports now properly support XOn/XOff and RTS/CTS flow control (bug #3432512)
- Multi-line commands are again kept in 'Send Command' (bug #3121249)
- Exception when selecting an undefined predefined command using 'Shift+Fx' fixed (bug #3367649)
- Exception due to invalid panel layout (splitter distance) is now handled (bug #3426400)
- Error message in case of an error when opening a port or socket improved (bug #2213639)
- Exception in case of a computer without any devices (e.g. off-line notebook) fixed (bug #3060623)
- 'NullReferenceException' in YAT.Log fixed (bug #3441961)

Limitations and known issues:
- General limitations of .NET Windows.Forms
   > System error messages are output in local language, although YAT is all-English (bug #1927786)
- MDI limitations of .NET
   > Issues with frame (bugs #1808492 and #1808493)
   > Issues with window list (bugs #1808494, #2846917 and #3160095)
   > Issue with re-routing shortcuts when activating a different MDI child (bug #2996684)
- Long monitor content is not displayed properly when scrolling using scroll bar (bug #2865562)
- Response of multi-line commands or files is delayed (bug #3072919)
- Support for serial ports which are named other than "COM..." isn't supported by .NET
  (feature request #2848228)
- Serial COM port RTS/CTS flow control 'Hardware' and 'Hardware Combined' may not be supported
  on certain hardware, e.g. certain USB/RS-232 converters (bug #3417097)
- Serial COM port XOn/XOff flow control state is properly indicated for 'Manual Software' and
  'Manual Combined' only, and always on for 'Software' and 'Combined' (bug #3456205)
- Handling of serial COM port break states (feature #2932691) may not be supported on certain
  hardware, e.g. USB/RS-232 converters
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature req. #2982052)
- Keyword "\!(Delay(<TimeSpan>))" not yet implemented (feature request #3105478)
- Wait for answer line (text terminals) not yet implemented (feature request #1808509)
- Sending immediately does not yet support special formats and commands (feature request #1808496)
- Logging in XML not yet implemented, definition of schema pending (bugs #1849227 and #1849228)


YAT 2.0 Beta 3 Candidate 4 Version 1.99.26 :: 2011-04-25
----------------------------------------------------------------------------------------------------

Important changes:
- Update to DejaVu 2.32
- Handling of non-platform file system paths improved (related to feature request #2982052)
- Shortcut to [Terminal > Select None] has changed to [Ctrl+Shift+N] (bug #3220852)
- Handling of unhandled exceptions improved (feature request #3176816)
   > The user now has a choice on how to proceed
   > There should no longer be undesired multiple exceptions
- Links to SourceForge trackers now contain filter and sort (feature request #3160872)
- Application information and dialog and message texts unified
- Some Unicode UTF-8/16/32 testing added (bug #1931537)
- .yat/.yaw/.xml files are preambled with UTF-8 byte order mark (BOM) (feature request #3144111)
- All source code and text files converted to UTF-8, including byte order mark (BOM)
- HowTo on optional user test config and settings templates added (related to #2838447/#2981764)
- Use of \todo, \fixme,... tags unified in source code
- Transmission test infrastructure improved such that it can deal with the "\!(Clear)" keyword

Fixed bugs:
- Predefined commands are also put into list of recent commands (bug #3146622)
- Local interface again is properly set when switching from COM port to TCP/IP socket (bug #3176815)
- Exception when switching terminal type to USB Ser/HID fixed (bug #3290317)
- TCP/IP client auto-reconnect fixed (bug #3285780)
- TCP/IP servers can be closed and reopened again (bugs #3137057 and #3137122)
- Exception when closing/reopening terminals quickly (e.g. out of a script) fixed (bug #3137047)
- Exception on clearing monitors fixed by improving thread-safety on raw and display repositories
- Exception on receiving fixed by improving thread-safety on raw and display repositories
  (bugs #3105773, #3156928, #3165821 and #3284519)
- Exception that only occurs in 'Release' probably fixed too (bugs #3176812 and #3187520)
- Exception on send also fixed by improving thread-safety on send operations
  (bugs #2872830 and #3177728)
- Handling of invalid Bluetooth ports on computer without other COM ports improved (bug #3172124)
- Object reference issue with SerialPortId.FirstStandardPort fixed (bugs #3134313)

Limitations and known issues:
- MDI limitations of .NET
   > Issues with frame (bugs #1808492 and #1808493)
   > Issues with window list (bugs #1808494 and #2846917)
   > Issue with re-routing shortcuts when activating a different MDI child (bug #2996684)
- Long monitor content is not displayed properly when scrolling using scroll bar (bug #2865562)
- Response of multi-line commands or files is delayed (bug #3072919)
- Serial port auto-reopen not yet implementable due to .NET deadlock issue in System.IO.SerialPort
  (feature request #1960299)
- Support for serial ports which are named other than "COM..." isn't supported by .NET
  (feature request #2848228)
- Handling of serial COM port break states (feature #2932691) may not be supported on certain
  hardware, e.g. USB/RS-232 converters
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature req. #2982052)
- Keyword "\!(Delay(<TimeSpan>))" not yet implemented (feature request #3105478)
- Wait for answer line (text terminals) not yet implemented (feature request #1808509)
- Sending immediately does not yet support special formats and commands (feature request #1808496)
- Logging in XML not yet implemented, definition of schema pending (bugs #1849227 and #1849228)
- Concurrent instances of YAT are limited in the use of default workspaces and terminals
  (feature request #2842713)


YAT 2.0 Beta 3 Candidate 3 Version 1.99.25 :: 2010-11-28
----------------------------------------------------------------------------------------------------

New:
- USB Ser/HID device connect/disconnect detection

Important changes:
- Conceptual issue in YAT main in respect to unhandled exceptions fixed (bug #3106928)
- Conceptual issue in YAT controller in respect to command line arguments fixed (bug #3111525)
- String comparisons improved, more selective use of different means of comparison
- Use of Debug/Trace/Console standardized within NUnit tests (bug #3111522)
- Recent file handling test cases created in YAT.Model.Test (bug #3107531)
- More specific exception types used, e.g. ArgumentOutOfRange instead of NotImplemented
- MKY.Types moved to the MKY namespace for consistency with the .NET System namespace

Fixed bugs:
- User interface exception in case of more than 12 predefined command pages fixed (bug #3112679)
- Exception on exit after reduction of the window size fixed (bug #2997101)
- Some minor user interface issues fixed (bug #3111508)
- Issue with saved USB Ser/HID device IDs fixed (bug #3116770)
- Open of recent terminal doesn't close workspace anymore (bug #3107531)
- Command line info and options are properly output again (bug #3111525)

Limitations and known issues:
- MDI limitations of .NET
   > Issues with frame (bugs #1808492 and #1808493)
   > Issues with window list (bugs #1808494 and #2846917)
   > Issue with re-routing shortcuts when activating a different MDI child (bug #2996684)
- Long monitor content is not displayed properly when scrolling using scroll bar (bug #2865562)
- Response of multi-line commands or files is delayed (bug #3072919)
- Serial port auto-reopen not yet implementable due to .NET deadlock issue in System.IO.SerialPort
  (feature request #1960299)
- Support for serial ports which are named other than "COM..." isn't supported by .NET
  (feature request #2848228)
- Handling of serial COM port break states (feature #2932691) may not be supported on certain
  hardware, e.g. USB/RS-232 converters
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature req. #2982052)
- UTF-16/32 testing pending (bug #1931537)
- Keyword "\!(Delay(<TimeSpan>))" not yet implemented (feature request #3105478)
- Wait for answer line (text terminals) not yet implemented (feature request #1808509)
- Sending immediately does not yet support special formats and commands (feature request #1808496)
- Logging in XML not yet implemented, definition of schema pending (bugs #1849227 and #1849228)
- Concurrent instances of YAT are limited in the use of default workspaces and terminals
  (feature request #2842713)


YAT 2.0 Beta 3 Candidate 2 Version 1.99.24 :: 2010-11-11
----------------------------------------------------------------------------------------------------

New:
- Support for USB Ser/HID implemented (feature request #2825931)
- Handling of input and output break states added to serial COM ports (feature request #2932691)
- Separate connect and total connect time, connect time is restarted on open (bug #2869585)
- Optional simple terminal/direct mode added to [Send Command] (feature request #1808496)
- Keyword "\!(Clear)" added (feature request #2998594)
- List of first 12 predefined command pages added to menu, with shortcuts (feature request #2914892)
- Recent history added to [Send File] (feature request #2869575)
- Text terminals: Line send delay added (feature request #1808508, bug #1963002)
- ASCII table added to help (feature request #1923555)
- User definable terminal name added (related to feature request #3091859)
- Different methods to retrieve terminal added to workspace (feature request #3091859)
- Terminal IDs and indices are shown in the main status bar (related to feature request #3091859)
- Test config including optional user config added (feature request #2981764)
- Physical entities used for testing such as COM ports are configurable (feature request #2838447)
- Test environment to ensure that TCP/IP works on multiple network interfaces added (bug #2970215)
- TCP/IP endurance and stress tests added
- UDP/IP endurance tests added
- GUI stress test added
- Predefined NUnit test categories added

Important changes:
- Performance on startup improved (feature request #2968216)
- Serial COM port list gets refreshed when changing the I/O port type
- Serial COM port list shows additional dialog if retrieving of ports takes more than 500 ms
- Selection and settings controls now clear contents when disabled
- Radix (string/hex) automatically changes when switching the terminal type (text/binary)
- Coupling of Tx and Rx radix improved
- Output of system error messages improved (feature request #3103502)
- MKY.Utilities renamed to MKY for consistency with the .NET System namespace
- XArray, XByte,... renamed to ArrayEx, ByteEx
- Update to NUnit 2.5.7
- Use of parametrized NUnit test cases
- Use of FxCop (feature request #2970221)
- Use of StyleCop (feature request #2970222)
- Methods and properties marked 'virtual', unless there are reasons against
- Null reference safe and more efficient implementation of Equals()
- GetHashCode() implementation according the .NET guidelines
- CompareTo() implementation according the .NET guidelines
- Project references to system assemblies cleaned
- Using directives cleaned
- Test and demo projects also signed with a strong name key
- Version information moved to a single file, added links to that file to projects
- Website and contact information added to all source headers (feature request #2998593)

Fixed bugs:
- TCP/IP open/close issues fixed (bugs #2684769, #2869622, #2966417)
- TCP/IP remote host and program freeze issue when opening from a file fixed (bug #2684813)
- TCP/IP data send event now occurs (bug #2884756)
- UDP/IP implementation changed from ALAZ.SystemEx.NetEx to System.Net.Sockets
- UDP/IP default local port fixed
- UDP/IP connect issue fixed (bug #2120432)
- Monitor contents are displayed even if they exceed the visible width (bugs #2865562 and #2981796)
- Binary terminals: 0x00 no more breaks line if sequence line break is disabled (bug #3050551)
- Multi-line command issue fixed (bug #2831453)
- Layout/anchor issue of description text field in predefined dialog fixed (bug #2987575)
- Tab order in predefined command dialog fixed (bug #2914863)
- Window startup position is adjusted if saved position is out of bounds, e.g. if window was
  saved on a secondary display that is not connected anymore (bugs #2856250 and #2906622)
- Partial EOL sequences work again (bug #2847375)
- Inconsistency when reading EOL sequence fixed (bug #2869497)
- Exception with TCP/IP AutoSocket fixed (bug #2869792)
- Exception when switching from COM port to TCP/IP AutoSocket fixed (bug #2981797)
- Exception in case of no COM ports fixed (bug #3041642)
- Exception when closing terminal using [File > Close] fixed (bugs #2684813, #2854547, #2970241)
- Exception when changing settings fixed (bug #2869538)
- Rare exception while drawing fixed (bug #2981762)
- Unhandled exception on binary terminal fixed (bug #2891996)
- Unhandled exception dialog improved and fixed (feature request #2970243, bug #2970245)

Limitations and known issues:
- MDI limitations of .NET
   > Issues with frame (bugs #1808492 and #1808493)
   > Issues with window list (bugs #1808494 and #2846917)
   > Issue with re-routing shortcuts when activating a different MDI child (bug #2996684)
- Long monitor content is not displayed properly when scrolling using scroll bar (bug #2865562)
- Response of multi-line commands or files is delayed (bug #3072919)
- Serial port auto-reopen not yet implementable due to .NET deadlock issue in System.IO.SerialPort
  (feature request #1960299)
- Support for serial ports which are named other than "COM..." isn't supported by .NET
  (feature request #2848228)
- Handling of serial COM port break states (feature #2932691) may not be supported on certain
  hardware, e.g. USB/RS-232 converters
- USB Ser/HID only runs on Windows; use of 'LibUsb'/'LibUsbDotNet' and significant migration work of
  implementation and test environment would be needed to run it on unixoids (feature req. #2982052)
- UTF-16/32 testing pending (bug #1931537)
- Keyword "\!(Delay(<TimeSpan>))" not yet implemented (feature request #3105478)
- Wait for answer line (text terminals) not yet implemented (feature request #1808509)
- Sending immediately does not yet support special formats and commands (feature request #1808496)
- Logging in XML not yet implemented, definition of schema pending (bugs #1849227 and #1849228)
- Concurrent instances of YAT are limited in the use of default workspaces and terminals
  (feature request #2842713)


YAT 2.0 Beta 3 Candidate 1 Version 1.99.23 :: 2009-09-10
----------------------------------------------------------------------------------------------------

Fixed bugs:
- Installer prerequisites fixed to .NET 3.5 (bug #2855869)

Limitations and known issues:
- Same as previous release, see below.


YAT 2.0 Beta 3 Candidate 1 Version 1.99.22 :: 2009-09-08
----------------------------------------------------------------------------------------------------

New:
- Select all/none items in monitor (feature request #2455810)
- Optionally hide radix, e.g. "80" instead of "80h" (feature request #2085990)
- Tabs are treated as tabs and not converted to <TAB> by default anymore (feature request #2813232)
- Additional toolbar buttons to set radix added
- Additional toolbar buttons to clear/save/copy monitor contents added

Important changes:
- Flickering eliminated by implementing a speed optimized list box (bug #2813227)
- Empty command text is now grayed italics (feature request #2838453)
- Handling of local user settings on concurrent instances of YAT improved (feature request #2842692)
- Update to .NET 3.5 SP1 (feature request #2813235)
- Update to ALAZ 2.0 (feature request #2813236)
- Update to DejaVu 2.29 (feature request #2813292)
- Update to NUnit 2.5.2 (feature request #2813296)
- Header and footer added to all source files (feature request #2136643)
- SVN tags added to all source files (feature request #2813228)

Fixed bugs:
- Workspaces (.yaw) now properly work on network paths (bug #2234443)
- Multi-line command issues fixed (bugs #2213644, #2816862 and #2831453)
- On open, serial ports immediately check whether there is already data pending (bug #2848229)
- TCP/IP remote IP address selection issue fixed (bug #2690191)
- TCP/IP disconnect issue fixed (bug #2684769)
- TCP/IP state issue fixed (bug #2694592)
- TCP/IP AutoSocket connect/disconnect/reconnect issues fixed (bug #2767608)
- Thread synchronization issue when closing while receiving fixed (bug #1931923)
- Log into .dat can now properly be started (bug #2455807)
- Directly opened terminals don't automatically get saved anymore (bug #2821291)
- Relative paths are no more added to recent files

Limitations and known issues:
- Serial port auto-reopen not yet implementable due to .NET deadlock issue in System.IO.SerialPort
  (feature request #1960299)
- Support for serial ports which are named other than "COM..." isn't supported by .NET
  (feature request #2848228)
- UTF-16/32 testing pending (bug #1931537)
- More advanced text line send and receive options not yet implemented
  (feature requests #1808508 and #1808509)
- Logging in XML not yet implemented, definition of schema pending (bugs #1849227 and #1849228)
- Concurrent instances of YAT are limited in the use of default workspaces and terminals
  (feature request #2842713)


YAT 2.0 Beta 2 Candidate 4 Version 1.99.20 :: 2008-07-18
----------------------------------------------------------------------------------------------------

Important changes:
- Treatment of serial port communication errors improved (feature request #1953199)
   > On less critical errors, red error message is shown in monitor, no message box is shown anymore
- XOn/XOff software flow control has thoroughly been tested, it correctly worked before
- Support for COM ports above 256 has been tested with local virtual port loopbacks
- File handling of workspace and terminal files improved
   > Automated workspace/terminal use case tests added
- Initialization and update of menu items improved
- Text: EOL processing improved
- Name of non-YAT assembly projects adapted to assembly name
- Separate non-YAT assembly encapsulating serial port and socket providers

Fixed bugs:
- RTS/CTS hardware flow control is fixed and thoroughly tested (bugs #1919399 and #1944332)
- Thread synchronization issue when closing while receiving fixed (bug #1931923)
- Command validation fixed (bug #1983796) and improved
- Font can be changed in format settings dialog (bug #1937065)
- Shortcuts are immediately active, no need to open menu first anymore (bug #1944023)
- [Send > File] now gets properly enabled (bug #1995796)
- Clearing monitors also clears incomplete lines (bug #1942335)
- Clearing predefined command description really clears it (bug #1945488)
- ShowEOL = false doesn't strip chars anymore (bug #1931582)
- Log now logs EOL according to settings (bug #1995797)
- Help, release notes and tracker instructions forms are shown center of parent (bug #1938031)

Limitations and known issues:
- Serial port auto-reopen not yet implementable due to .NET deadlock issue in System.IO.SerialPort
  (feature request #1960299)
- UTF-16/32 testing pending (bug #1931537)
- More advanced text line send and receive options not yet implemented
  (feature requests #1808508 and #1808509)
- Logging in XML not yet implemented, definition of schema pending (bugs #1849227 and #1849228)


YAT 2.0 Beta 2 Candidate 3 Version 1.99.19 :: 2008-04-01
----------------------------------------------------------------------------------------------------

New:
- Serial COM ports are now labelled, e.g. "COM2 - Serial On USB Port"
- Monitors have two new features
   > Connect time can be displayed
   > Direction icon changes color depending on I/O state
- Advanced setting [Copy Predefined Command] added
   > By default, predefined commands are not copied to [Send Command] text box after send
   > If [Copy Predefined Command] is enabled, command is copied after send
- Copy options to/from predefined to send command/file added
- Predefined commands can now be deleted/cleared

Important changes:
- Number of display lines can now be changed
- Displaying bug for UTF-8 encoding fixed
- Parser bug on "\\" fixed
- Copy and save don't add extra line anymore
- Format settings bug fixed
- Displaying performance improved

Limitations and known issues:
- Thorough testing of RTS/CTS hardware flow control pending
- Thorough testing of XOn/XOff software flow control pending
- UTF-16/32 testing pending
- More advanced text line send and receive options not yet implemented
- Logging in XML not yet implemented, definition of schema pending


YAT 2.0 Beta 2 Candidate 2 Version 1.99.18 :: 2008-03-17
----------------------------------------------------------------------------------------------------

New:
- 'DejaVu Sans Mono' as default font
   > [View > Format > Font] to select 'DejaVu Sans Mono' on existing files
- Advanced setting [Keep Command] added
   > By default, command is kept in [Send Command] text box after send
   > If [Keep Command] is disabled, command is cleared after send
- Radix for Tx and Rx can now optionally be set separately
- Optional space replacement by open box character U+2423
- Menu entries to request support, features and submit bugs added
- Automated NUnit loop-back test for model (Main/Workspace/Terminal) added

Important changes:
- Mix-up of lines when receiving multiple lines fixed
- Duplications when sending multi-line commands fixed
- Line/byte counters fixed
- Measuring and calculation of spacing improved for monitors
- XOn/XOff improved

Limitations and known issues:
- Thorough testing of XOn/XOff software flow control pending
- More advanced text line send and receive options not yet implemented


YAT 2.0 Beta 2 Candidate 1 Version 1.99.17 :: 2008-02-11
----------------------------------------------------------------------------------------------------

New:
- General settings in [File > Preferences]
- Automatic testing using NUnit added

Important changes:
- Relation between workspace (.yaw) and terminals (.yat) massively improved
   > Workspace references terminals using relative file paths
   > By default, workspace and terminals are automatically managed
   > When explicitly saved, workspace and terminals are treated in MDI manner
- Settings saved in old terminal and workspace files can now always be retrieved correctly
- Complete refactoring into proper MVC (model-view-controller) architecture
- Terminal status improved
- Little-endian/big-endian support for \h \d \o \b added

Limitations and known issues:
- Thorough testing of XOn/XOff software flow control pending
- More advanced text line send and receive options not yet implemented


YAT 2.0 Beta 2 Preliminary Version 1.99.13 :: 2007-08-30
----------------------------------------------------------------------------------------------------

New:
- Workspace can be stored as ".yaw" file
- Support for non-standard baud rates added
- Little-endian/big-endian support added
- Binary: Binary sequence line break implemented

Important changes:
- Layout and menu structure improved
- Release notes moved to menu

Limitations and known issues:
- ".yat" files of older versions cannot be handled yet
- Workspace references terminal files with absolute paths
- 2 parallel terminals sometimes crash


YAT 2.0 Beta 1 Version 1.99.12 :: 2007-04-15
----------------------------------------------------------------------------------------------------

New:
- TCP/IP (Client/Server/AutoSocket) and UDP/IP support added
- Baud rates above 115k added
- Serial COM ports that are in use are marked "(in use)"

Important changes:
- Text: EOL sequence is disabled by default

Limitations and known issues:
- Text: [Wait for Response] is prepared but not yet implemented
- Text: [Send Line Delay] is prepared but not yet implemented
- Binary: [Binary Sequence Line Break] is prepared but not yet implemented
- Procedure command "\!(Delay(500ms))" is prepared but not yet implemented
- Direct Mode (as in traditional terminals) not yet implemented, requires serious refactorings...
- YAT Workspace (.yaw) not yet implemented


YAT 2.0 Alpha 3 Version 1.99.8 :: 2007-02-25
----------------------------------------------------------------------------------------------------

New:
- [Ctrl+C] copies selected monitor contents onto clipboard
- Save and send from YAT XML files
- Procedure commands "\!(NoEOL)" and "\!(EOL)" added
- Chronometer added to status bar

Important changes:
- 12 instead of 8 predefined commands per page
- Predefined command dialog bugs fixed
- Text: "EOL = None" fixed

Limitations and known issues:
- So far, only serial ports are supported, TCP/IP and UDP/IP are yet to be implemented
- Already open serial COM ports are not marked as such
- Text: EOL sequence is always shown
- Procedure command "\!(Delay(500ms))" is prepared but not yet implemented
- Direct Mode (as in traditional terminals) not yet implemented, requires serious refactorings...


YAT 2.0 Alpha 2 Version 1.99.3 :: 2007-02-07
----------------------------------------------------------------------------------------------------

New:
- Text: Unicode and other encoding support added (approx 150 encodings)
- Byte/line counter added to monitors

Limitations and known issues:
- So far, only serial ports are supported, TCP/IP and UDP/IP are yet to be implemented
- Already open serial COM ports are not marked as such
- Text: EOL sequence is always shown


YAT 2.0 Alpha 1 Version 1.99.0 :: 2007-01-23
----------------------------------------------------------------------------------------------------

New:
- Unlimited number of predefined commands
- Support for multi-line commands added
- RS-485 support added
- Manual flowcontrol added

Important changes:
- Renamed to YAT
- Upgrade to .NET 2.0
- Use of serial port component of .NET 2.0
   > Serial port component 'Charon.Communcations' removed
- Application settings shifted from registry to local user directory
- Terminal settings (.yat) refined
- Visual appearance modernized
- Displaying performance improved
- Nuvola based icons
- About dialog: Link labels instead of normal labels

Limitations and known issues:
- So far, only serial ports are supported, TCP/IP and UDP/IP are yet to be implemented
- Text: EOL sequence is always shown


====================================================================================================
4. History of Changes in XTerm232
====================================================================================================

XTerm232 1.0.2 :: 2003-10-31
----------------------------------------------------------------------------------------------------
- NewTerminal.Connect registry entry can be empty


XTerm232 1.0.1 :: 2003-10-30
----------------------------------------------------------------------------------------------------
- Log Root: CheckPathExists = false / CheckFileExists = false
- Readme: More precise information on .NET download
- BufferSettings change to DisplaySettings
- Click on PortStatus opens connection settings
- PortStatus update
- ConnectionSettings recreation
- Owner drawn ListBoxes
- Auto ListBox scroll
- Log file creation/clear bugs fixed
- FontSettings
- Connect CheckBox on NewTerminal
- WindowLayoutUpdateControl


XTerm232 1.0.0 :: 2003-10-14
----------------------------------------------------------------------------------------------------
- Initial release
- Bin/Oct/Dec/Hex/Char/String
- COM 1..256
- 75...115000 Baud
- Predefined Commands/Direct Commands
- Text/Binary
- Log Raw/Neat
- Send files
- RichTextBoxes


====================================================================================================
5. Roadmap
====================================================================================================

YAT 2 for Mono/Linux (feature requests #381 and #401) :: Expected by YAT 2.8.0
----------------------------------------------------------------------------------------------------
YAT 2 is in maintenance mode now, i.e. focus on bug fixes and minor changes, while work for YAT 4
is already ongoing. Still, YAT 2.8.0 intends to bring support for Mono/Linux.


(Version 3 will be skipped to prevent naming conflict with yat3 of Dieter Fauth that became
public around the same time as YAT. And, 4.0 buzzes more anyway (industry 4.0 and the like ;-))
----------------------------------------------------------------------------------------------------


YAT 4 with scripting (feature requests #74 and #82) :: Expected in 2025
----------------------------------------------------------------------------------------------------
YAT 4.0 will feature the integration of a scripting environment, based on the CSScript engine.
Scripting will allow you to script YAT and automate repetitive tasks, use it for test automation,
implement protocol layers,... whatever you can think of. Examples and templates will be included.

It is also planned to demonstrate how to use YAT from a PowerShell script and along with NUnit.
All these features aim for providing a versatile automatic testing tool for serial communications.


====================================================================================================
6. Legal
====================================================================================================

Copyright © 2003-2004 HSR Hochschule für Technik Rapperswil.
Copyright © 2003-2024 Matthias Kläy.
All rights reserved.

YAT is licensed under the GNU LGPL-2.1.
See https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html for license terms.


****************************************************************************************************
                                      End of YAT Release Notes.
****************************************************************************************************
